详解Python import方法引入模块的实例
作者:lqh 时间:2021-01-10 04:21:08
详解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
来源:http://blog.csdn.net/qq_878799579/article/details/72877629
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
python merge、concat合并数据集的实例讲解
Python全景系列之数据类型大盘点
scrapy与selenium结合爬取数据(爬取动态网站)的示例代码
![](https://img.aspxhome.com/file/2023/7/79697_0s.png)
Monster for Chrome
![](https://img.aspxhome.com/file/UploadPic/20105/4/monsterui-64s.png)
Python 正则表达式详解
![](https://img.aspxhome.com/file/2023/0/84950_0s.jpg)
scrapy+scrapyd+gerapy 爬虫调度框架超详细教程
![](https://img.aspxhome.com/file/2023/4/77794_0s.png)
20个优秀网站助你征服CSS[译]
![](https://img.aspxhome.com/file/UploadPic/20089/21/2008921132958672s.png)
关于淘宝商城新版的一点看法
![](https://img.aspxhome.com/file/UploadPic/20096/28/taobao_mall_2-49s.png)
如何避免SQL语句中含有单引号而导致操作失败?
快速解决vue.js 模板和jinja 模板冲突的问题
![](https://img.aspxhome.com/file/2023/5/81785_0s.jpg)
asp截取字符串方法
HTTP状态码
MySQL Server 5.0安装教程(图解)
![](https://img.aspxhome.com/file/UploadPic/201010/14/20101014143531281s.jpg)
游戏的用户体验营销小札
python静态web服务器实现方法及代码详解
详解Python装饰器的四种定义形式
HTML5本地存储初探(二)
![](https://img.aspxhome.com/file/UploadPic/20103/7/20100131-rmki9pjq85xy9nbt436gkdfb7i-94s.png)
Oracle 添加用户并赋权,修改密码,解锁,删除用户的方法
Yahoo发布一款FireFox网站开发插件
![](https://img.aspxhome.com/file/uploadpic/20079/23/2007923161456932.jpg)
python 利用panda 实现列联表(交叉表)
![](https://img.aspxhome.com/file/2023/0/68990_0s.jpg)