详解Python import方法引入模块的实例


Posted in Python onAugust 02, 2017

详解Python import方法引入模块的实例

在Python用import或者from…import或者from…import…as…来导入相应的模块,作用和使用方法与C语言的include头文件类似。其实就是引入某些成熟的函数库和成熟的方法,避免重复造轮子,提高开发速度。

python的import方法可以引入系统的模块,也可以引入我们自己写好的共用模块,这点和PHP非常相似,但是它们的具体细节还不是很一样。因为php是在引入的时候指明引入文件的具体路径,而python中不能够写文件路径进行引入。

下面总结一下import的几种情况:

python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。

下面将具体介绍几种常用情况:

(1)主程序与模块程序在同一目录下:

如下面程序结构:

-- src 
|-- mod1.py 
? test1.py

若在程序test1.py中导入模块mod1, 则直接使用import mod1或from mod1 import *;

(2)主程序所在目录是模块所在目录的父(或祖辈)目录

如下面程序结构:

-- src 
|-- mod1.py 
|-- mod2 
|? mod2.py 
`? test1.py

若在程序test1.py中导入模块mod2, 需要在mod2文件夹中建立空文件init.py文件(也可以在该文件中自定义输出模块接口); 然后使用 from mod2.mod2 import * 或import mod2.mod2.

(3)主程序导入上层目录中模块或其他目录(平级)下的模块

如下面程序结构:

-- src 
|-- mod1.py 
|-- mod2 
|? mod2.py 
|? sub 
| -- test2.py 
? test1.py

若在程序test2.py中导入模块mod1和mod2。首先需要在mod2下建立init.py文件(同(2)),src下不必建立该文件。然后调用方式如下:

下面程序执行方式均在程序文件所在目录下执行,如test2.py是在cd sub;之后执行python test2.py

而test1.py是在cd src;之后执行python test1.py; 不保证在src目录下执行python sub/test2.py成功。

import sys 
sys.path.append(“..”) 
import mod1 
import mod2.mod2

以上就是Python import方法引入模块的实例的详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python的一些用法分享
Oct 07 Python
在Python上基于Markov链生成伪随机文本的教程
Apr 17 Python
Python入门必须知道的11个知识点
Mar 21 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
python按时间排序目录下的文件实现方法
Oct 17 Python
Python文件循环写入行时防止覆盖的解决方法
Nov 09 Python
python 用所有标点符号分隔句子的示例
Jul 15 Python
pytorch方法测试——激活函数(ReLU)详解
Jan 15 Python
Python如何用filter函数筛选数据
Mar 05 Python
用python实现学生管理系统
Jul 24 Python
python如何爬取网页中的文字
Jul 28 Python
用Python制作音乐海报
Jan 26 Python
Python字符串拼接的几种方法整理
Aug 02 #Python
详解 Python 读写XML文件的实例
Aug 02 #Python
Python MD5加密实例详解
Aug 02 #Python
Python 获取当前所在目录的方法详解
Aug 02 #Python
浅谈python中的数字类型与处理工具
Aug 02 #Python
Python实现的快速排序算法详解
Aug 01 #Python
Python实现的弹球小游戏示例
Aug 01 #Python
You might like
PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
2009/03/10 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
php中file_get_contents()函数用法实例
2019/02/21 PHP
JavaScript DOM 添加事件
2009/02/14 Javascript
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
基于jquery的兼容各种浏览器的iframe自适应高度的脚本
2010/08/13 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
JS实现模拟风力的雪花飘落效果
2015/05/13 Javascript
深入理解requestAnimationFrame的动画循环
2016/09/20 Javascript
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
2016/12/14 Javascript
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
2017/05/30 Javascript
深入理解vue2.0路由如何配置问题
2017/07/18 Javascript
微信小程序页面生命周期详解
2018/01/31 Javascript
Vue中render函数的使用方法
2018/01/31 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
[46:44]VG vs TNC Supermajor小组赛B组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
python实现bucket排序算法实例分析
2015/05/04 Python
Python ldap实现登录实例代码
2016/09/30 Python
Python中工作日类库Busines Holiday的介绍与使用
2017/07/06 Python
对python的bytes类型数据split分割切片方法
2018/12/04 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
Python实现随机爬山算法
2021/01/29 Python
Blue Nile台湾:钻石珠宝商,订婚首饰、结婚戒指和精品首饰
2017/11/24 全球购物
Elizabeth Gage官网:英国最好的珠宝设计之一
2020/09/26 全球购物
Araks官网:纽约内衣品牌
2020/10/15 全球购物
PHP经典面试题
2016/09/03 面试题
恶搞卫生巾广告词
2014/03/18 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
技术入股协议书
2016/03/22 职场文书
python 提取html文本的方法
2021/05/20 Python
动画电影《龙珠超 超级英雄》延期上映
2022/03/20 日漫
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript