详解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的发展史
Sep 26 Python
Python创建系统目录的方法
Mar 11 Python
python验证码识别的实例详解
Sep 09 Python
python中安装Scrapy模块依赖包汇总
Jul 02 Python
Python实现查找二叉搜索树第k大的节点功能示例
Jan 24 Python
使用pandas读取文件的实现
Jul 31 Python
python禁用键鼠与提权代码实例
Aug 16 Python
详解Python3 pickle模块用法
Sep 16 Python
Python 依赖库太多了该如何管理
Nov 08 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
Dec 25 Python
django admin后管定制-显示字段的实例
Mar 11 Python
python 实现一个图形界面的汇率计算器
Nov 09 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验证session无效的解决方法
2014/11/04 PHP
php获取客户端电脑屏幕参数的方法
2015/01/09 PHP
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
php gd等比例缩放压缩图片函数
2016/06/12 PHP
xmlHTTP实例
2006/10/24 Javascript
js cookies实现简单统计访问次数
2009/11/24 Javascript
document.getElementById的简写方式(获取id对象的简略写法)
2010/09/10 Javascript
有趣的javascript数组定义方法
2010/09/10 Javascript
jQuery1.3.2 升级到jQuery1.4.4需要修改的地方
2011/01/06 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
jQuery的each终止或跳过示例代码
2013/12/12 Javascript
Ext修改GridPanel数据和字体颜色、css属性等
2014/06/13 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
2016/03/01 Javascript
codeMirror插件使用讲解
2017/01/16 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
基于vue 添加axios组件,解决post传参数为null的问题
2018/03/05 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
详解Puppeteer前端自动化测试实践
2019/02/21 Javascript
webpack+vue.js构建前端工程化的详细教程
2020/05/10 Javascript
JavaScript实现世界各地时间显示
2020/09/07 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
详细解读Python中的__init__()方法
2015/05/02 Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
2017/04/15 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
2017/12/20 Python
Python处理菜单消息操作示例【基于win32ui模块】
2018/05/09 Python
启动Atom并运行python文件的步骤
2018/11/09 Python
python中比较两个列表的实例方法
2019/07/04 Python
生物学专业求职信
2014/07/23 职场文书
英语课前三分钟演讲稿
2014/08/19 职场文书
2014迎接教师节演讲稿
2014/09/10 职场文书
快递员岗位职责
2014/09/12 职场文书
大一学生个人总结
2015/02/15 职场文书
2016年暑期见闻作文
2015/11/25 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python