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 相关文章推荐
Django的session中对于用户验证的支持
Jul 23 Python
Python连接DB2数据库
Aug 27 Python
Python实现购物系统(示例讲解)
Sep 13 Python
python实现大转盘抽奖效果
Jan 22 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
浅析Python 中几种字符串格式化方法及其比较
Jul 02 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
Jul 03 Python
pygame实现打字游戏
Feb 19 Python
为什么黑客都用python(123个黑客必备的Python工具)
Jan 31 Python
pycharm sciview的图片另存为操作
Jun 01 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 Python
python list等分并从等分的子集中随机选取一个数
Nov 16 Python
Python基础之hashlib模块详解
May 06 #Python
用Python爬虫破解滑动验证码的案例解析
python本地文件服务器实例教程
python字符串常规操作大全
python自动化之如何利用allure生成测试报告
python使用openpyxl库读写Excel表格的方法(增删改查操作)
Python time库的时间时钟处理
You might like
php 字符串中的\n换行符无效、不能换行的解决方法
2014/04/02 PHP
destoon实现资讯信息前面调用它所属分类的方法
2014/07/15 PHP
php异常处理方法实例汇总
2015/06/24 PHP
php微信开发接入
2016/08/27 PHP
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
Chrome中模态对话框showModalDialog返回值问题的解决方法
2010/05/25 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
JavaScript常用的弹出广告及背投广告实现方法
2015/02/06 Javascript
使用javascript插入样式
2016/03/14 Javascript
jQuery简单实现iframe的高度根据页面内容自适应的方法
2016/08/01 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
nodejs学习笔记之路由
2017/03/27 NodeJs
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
浅谈mint-ui loadmore组件注意的问题
2017/11/08 Javascript
javascript自定义事件功能与用法实例分析
2017/11/08 Javascript
基于js中的存储键值对以及注意事项介绍
2018/03/30 Javascript
Vue 父子组件数据传递的四种方式( inheritAttrs + $attrs + $listeners)
2018/05/04 Javascript
原生javascript运动函数的封装示例【匀速、抛物线、多属性的运动等】
2020/02/23 Javascript
Python自定义进程池实例分析【生产者、消费者模型问题】
2016/09/19 Python
Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案
2017/02/13 Python
Python变量赋值的秘密分享
2018/04/03 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
Python3如何使用tabulate打印数据
2020/09/25 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
css3实现蒙版弹幕功能
2019/06/18 HTML / CSS
海淘母婴商城:国际妈咪
2016/07/23 全球购物
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
九年级物理教学反思
2014/01/29 职场文书
书法比赛获奖感言
2014/02/10 职场文书
班级团队活动方案
2014/08/14 职场文书
一份没有按时交货失信于客户的检讨书
2014/09/19 职场文书
机关干部个人对照检查材料思想汇报
2014/09/28 职场文书
公司客户答谢酒会祝酒词
2015/08/11 职场文书
Pytest allure 命令行参数的使用
2021/04/18 Python