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 相关文章推荐
Python3基础之函数用法
Aug 13 Python
python生成验证码图片代码分享
Jan 28 Python
浅谈python抛出异常、自定义异常, 传递异常
Jun 20 Python
Python实现翻转数组功能示例
Jan 12 Python
Python简单实现的代理服务器端口映射功能示例
Apr 08 Python
Python实现的读取电脑硬件信息功能示例
May 30 Python
解决python中 f.write写入中文出错的问题
Oct 31 Python
Django ManyToManyField 跨越中间表查询的方法
Dec 18 Python
python 函数中的参数类型
Feb 11 Python
如何卸载python插件
Jul 08 Python
如何以Winsows Service方式运行JupyterLab
Aug 30 Python
python Xpath语法的使用
Nov 26 Python
Python基础之hashlib模块详解
May 06 #Python
用Python爬虫破解滑动验证码的案例解析
python本地文件服务器实例教程
python字符串常规操作大全
python自动化之如何利用allure生成测试报告
python使用openpyxl库读写Excel表格的方法(增删改查操作)
Python time库的时间时钟处理
You might like
PHP+DBM的同学录程序(4)
2006/10/09 PHP
php使浏览器直接下载pdf文件的方法
2013/11/15 PHP
laravel请求参数校验方法
2019/10/10 PHP
javascript 写类方式之七
2009/07/05 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
javascript学习笔记(十) js对象 继承
2012/06/19 Javascript
js setTimeout 常见问题小结
2013/08/13 Javascript
form表单action提交的js部分与html部分
2014/01/07 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
Javascript基础教程之for循环
2015/01/18 Javascript
JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
2016/03/30 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
jQuery+Ajax实现限制查询间隔的方法
2016/06/07 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
jquery实现一个全局计时器(商城可用)
2017/06/30 jQuery
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
用js简单提供增删改查接口
2019/05/12 Javascript
微信小程序自定义联系人弹窗
2020/05/26 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
[26:40]DOTA2上海特级锦标赛A组资格赛#1 Secret VS MVP.Phx第一局
2016/02/25 DOTA
web.py在模板中输出美元符号的方法
2014/08/26 Python
Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法
2016/04/23 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
2018/03/19 Python
如何优雅地处理Django中的favicon.ico图标详解
2018/07/05 Python
python3实现名片管理系统
2020/11/29 Python
python内存监控工具memory_profiler和guppy的用法详解
2019/07/29 Python
在Python中画图(基于Jupyter notebook的魔法函数)
2019/10/28 Python
使用HTML5加载音频和视频的实现代码
2020/11/30 HTML / CSS
美国最大的珠宝首饰网上商城:Jewelry.com
2016/07/22 全球购物
英国领先的豪华时尚家居网上商店:Amara
2019/08/12 全球购物
智能室内花园:Click & Grow
2021/01/29 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
教育专业个人求职信
2013/12/02 职场文书
事业单位接收函
2014/01/10 职场文书
2015年学校保卫部工作总结
2015/05/11 职场文书
Java十分钟精通进阶适配器模式
2022/04/06 Java/Android