Python中常见的导入方式总结


Posted in Python onMay 06, 2021

一、直接导入模块

import 模块名

优点:干净直接

import sys
print(sys.path)
import os # os是一个模块
import os.path # 注意这里的os.path是一个模块

二、直接导入包

import 包名

如果只导入包,在调用时不可使用.来找到模块,但可以访问到__init__.py下的类和函数。

import bs4 # 注意这里bs4是一个包!
soup = bs4.BeautifulSoup(...) # 可以访问到包中__init__.py下的类和函数

import Mypack
# Mypack.fun.func() 会报错,找不到fun模块,需要使用方法3或6来导入特定模块

三、导入包中的一个模块

import 包名.模块名

包使用的注意事项

  • 需要先将包(文件夹)写在sys.path列表中的一个目录下,如果没有需要使用列表的append方法追加进去。
  • 在包中需要再写一个__init__.py文件表示这是一个包,文件可以为空。在__init__.py下写的函数和类可以在只导入包的情况下访问到(如只导入bs4包,可以使用BeautifulSoup类,但不可以使用包中的其他模块)。
import sys
sys.path.append(r"E:\\")

import Mypack.fun
Mypack.fun.func()

四、导入模块并取别名

import 模块名 as 别名

优点:别名方便记忆

import sys as s
print(s.path)

import Mypack.fun as f
f.func()

五、从模块(或者包)中取出特定函数(不建议)

from 模块名(包名) import 函数名

优点:直接取出特定函数,无需再加命名空间。

缺点:无命名空间限制,容易乱。

from sys import setrecursionlimit
setrecursionlimit(500)

from bs4 import BeautifulSoup # 这里取出了bs4包中__init__.py文件中的BeautifulSoup类
soup = BeautifulSoup(...)

用通配符导入模块中的所有函数,且无需加命名空间。

from sys import *
setrecursionlimit(500)

六、从包中取出特定模块

 from 包名 import 模块名

优点:相较方法3在调用时可以少写包名。

from Mypack import fun
fun.func()

到此这篇关于Python中常见的导入方式总结的文章就介绍到这了,更多相关Python常见导入方式内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现k均值算法示例(k均值聚类算法)
Mar 16 Python
Python自动连接ssh的方法
Mar 07 Python
python中reader的next用法
Jul 24 Python
python将秒数转化为时间格式的实例
Sep 16 Python
python 文本单词提取和词频统计的实例
Dec 22 Python
python实现Dijkstra算法的最短路径问题
Jun 21 Python
关于tf.TFRecordReader()函数的用法解析
Feb 17 Python
Python enumerate内置库用法解析
Feb 24 Python
使用 Python ssh 远程登陆服务器的最佳方案
Mar 06 Python
python如何导入依赖包
Jul 13 Python
使用Python绘制台风轨迹图的示例代码
Sep 21 Python
python爬虫scrapy基本使用超详细教程
Feb 20 Python
Python基础之hashlib模块详解
May 06 #Python
用Python爬虫破解滑动验证码的案例解析
python本地文件服务器实例教程
python字符串常规操作大全
python自动化之如何利用allure生成测试报告
python使用openpyxl库读写Excel表格的方法(增删改查操作)
Python time库的时间时钟处理
You might like
自写的利用PDO对mysql数据库增删改查操作类
2018/02/19 PHP
Laravel基础-关于引入公共文件的两种方式
2019/10/18 PHP
js当一个变量为函数时 应该注意的一点细节小结
2011/12/29 Javascript
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
2013/01/15 Javascript
jQuery :first选择器使用介绍
2013/08/09 Javascript
Javascript实现简单的富文本编辑器附演示
2014/06/16 Javascript
如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
2016/02/23 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
浅析Javascript ES6新增值比较函数Object.is
2016/08/24 Javascript
Javascript的动态增加类的实现方法
2016/10/20 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
js实现hashtable的赋值、取值、遍历操作实例详解
2016/12/25 Javascript
开源免费天气预报接口API及全国所有地区代码(国家气象局提供)
2016/12/26 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
jQuery EasyUI开发技巧总结
2017/09/26 jQuery
webpack引入eslint配置详解
2018/01/22 Javascript
微信小程序之圆形进度条实现思路
2018/02/22 Javascript
三种Webpack打包方式(小结)
2018/09/19 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
js与jquery获取input输入框中的值实例讲解
2020/02/27 jQuery
Python实现的一个简单LRU cache
2014/09/26 Python
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
Python3通过chmod修改目录或文件权限的方法示例
2020/06/08 Python
python 录制系统声音的示例
2020/12/21 Python
html5 div布局与table布局详解
2016/11/16 HTML / CSS
党的群众路线教育实践活动公开承诺书
2014/03/28 职场文书
家庭教育的心得体会
2014/09/01 职场文书
社会体育专业大学生职业生涯规划书
2014/09/17 职场文书
见习报告的格式
2014/11/04 职场文书
校长师德表现自我评价
2015/03/04 职场文书
python绘图subplots函数使用模板的示例代码
2021/04/30 Python
利用Python判断你的密码难度等级
2021/06/02 Python
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis