详解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根据经纬度计算距离示例
Feb 16 Python
在Python的web框架中中编写日志列表的教程
Apr 30 Python
python 简单备份文件脚本v1.0的实例
Nov 06 Python
django模型层(model)进行建表、查询与删除的基础教程
Nov 21 Python
Python lxml解析HTML并用xpath获取元素的方法
Jan 02 Python
python实现多层感知器
Jan 18 Python
Python实现深度遍历和广度遍历的方法
Jan 22 Python
详解python中的time和datetime的常用方法
Jul 08 Python
python中tkinter的应用:修改字体的实例讲解
Jul 17 Python
python调用支付宝支付接口流程
Aug 15 Python
python中的subprocess.Popen()使用详解
Dec 25 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
Jun 18 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 Squid中可缓存的动态网页设计
2008/09/17 PHP
使用Apache的htaccess防止图片被盗链的解决方法
2013/04/27 PHP
php遍历目录与文件夹的多种方法详解
2013/11/14 PHP
PHP大转盘中奖概率算法实例
2014/10/21 PHP
PHP生成静态HTML页面最简单方法示例
2015/04/09 PHP
Laravel SQL语句记录方式(推荐)
2016/05/26 PHP
PHP实现将标点符号正则替换为空格的方法
2017/08/09 PHP
Laravel学习教程之本地化模块
2017/08/18 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
2019/03/07 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
深入理解javaScript中的事件驱动
2013/05/21 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
js获取内联样式的方法
2015/01/27 Javascript
AngularJS入门心得之directive和controller通信过程
2016/01/25 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
jquery UI Datepicker时间控件冲突问题解决
2016/12/16 Javascript
微信小程序 devtool隐藏的秘密
2017/01/21 Javascript
Vue.js实战之Vuex的入门教程
2017/04/01 Javascript
jQuery Form插件使用详解_动力节点Java学院整理
2017/07/17 jQuery
javascript性能优化之分时函数的介绍
2018/03/28 Javascript
微信小程序使用gitee进行版本管理
2018/09/20 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
2019/07/30 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
python3中pip3安装出错,找不到SSL的解决方式
2019/12/12 Python
Python日志器使用方法及原理解析
2020/09/27 Python
接口自动化多层嵌套json数据处理代码实例
2020/11/20 Python
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
美国著名珠宝品牌之一:Jared The Galleria Of Jewelry
2016/10/01 全球购物
经典c++面试题二
2015/08/14 面试题
战友聚会主持词
2014/04/02 职场文书
领导班子奢靡之风查摆问题及整改措施
2014/09/27 职场文书
《玩出了名堂》教学反思
2016/02/17 职场文书
《猴王出世》教学反思
2016/02/23 职场文书
班级元旦晚会开幕词
2016/03/04 职场文书
用python基于appium模块开发一个自动收取能量的小助手
2021/09/25 Python
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android