浅谈python import引入不同路径下的模块


Posted in Python onJuly 11, 2017

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

 (4)从(3)可以看出,导入模块关键是能够根据sys.path环境变量的值,找到具体模块的路径。

这里仅介绍上面三种简单情况。

以上这篇浅谈python import引入不同路径下的模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python with用法实例
Apr 14 Python
python制作爬虫并将抓取结果保存到excel中
Apr 06 Python
Python抓取框架Scrapy爬虫入门:页面提取
Dec 01 Python
Python爬豆瓣电影实例
Feb 23 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
Aug 06 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
Nov 19 Python
NumPy排序的实现
Jan 21 Python
详解python内置常用高阶函数(列出了5个常用的)
Feb 21 Python
Django中从mysql数据库中获取数据传到echarts方式
Apr 07 Python
python如何删除列为空的行
Jul 17 Python
Python3 用matplotlib绘制sigmoid函数的案例
Dec 11 Python
Python的这些库,你知道多少?
Jun 09 Python
python 环境变量和import模块导入方法(详解)
Jul 11 #Python
Python编写登陆接口的方法
Jul 10 #Python
CentOS中升级Python版本的方法详解
Jul 10 #Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
Jul 10 #Python
Python 实现数据库更新脚本的生成方法
Jul 09 #Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 #Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 #Python
You might like
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
php地址引用(php地址引用的效率问题)
2012/03/23 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
2019/04/10 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
2019/10/16 PHP
jquery 查找新建元素代码
2010/07/06 Javascript
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
2011/02/14 Javascript
原来Jquery.load的方法可以一直load下去
2011/03/28 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
原生js实现的贪吃蛇网页版游戏完整实例
2015/05/18 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
2016/01/23 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
原生JS实现圆环拖拽效果
2017/04/07 Javascript
JavaScript之RegExp_动力节点Java学院整理
2017/06/29 Javascript
JSON对象转化为字符串详解
2017/08/11 Javascript
微信小程序自定义扫码功能界面的实现代码
2020/07/02 Javascript
js实现页面导航层级指示效果
2020/08/25 Javascript
[49:08]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.27
2020/12/01 DOTA
在Python中使用dict和set方法的教程
2015/04/27 Python
Python正规则表达式学习指南
2016/08/02 Python
Python实现的列表排序、反转操作示例
2019/03/13 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
2019/08/04 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
2020/02/18 Python
python自动生成sql语句的脚本
2021/02/24 Python
HTML5之SVG 2D入门12—SVG DOM及DOM操作介绍
2013/01/30 HTML / CSS
MADE荷兰:提供原创设计师家具
2018/04/03 全球购物
我的applet原先好好的, 一放到web server就会有问题,为什么?
2016/05/10 面试题
高中语文教学反思
2014/01/16 职场文书
市场总经理岗位职责
2014/04/11 职场文书
公司开业庆典策划方案
2014/06/04 职场文书
2014老师三严三实对照检查材料思想汇报
2014/09/18 职场文书
学校领导班子四风问题整改意见
2014/10/02 职场文书
2014年大学学生会工作总结
2014/12/02 职场文书
有关西游记的读书笔记
2015/06/25 职场文书
Nginx+Tomcat负载均衡集群的实现示例
2021/10/24 Servers