python在不同层级目录import模块的方法


Posted in Python onJanuary 31, 2016

使用python进行程序编写时,经常会使用第三方模块包。这种包我们可以通过python setup install 进行安装后,通过import XXX或from XXX import yyy 进行导入。不过如果是自己遍写的依赖包,又不想安装到python的相应目录,可以放到本目录里进行import进行调用;为了更清晰的理清程序之间的关系,例如我们会把这种包放到lib目录再调用。本篇就针对常见的模块调用方法汇总下。

一、同级目录下的调有

程序结构如下:

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

若在程序test1.py中导入模块mod1, 则直接使用

import mod1

from mod1 import *;

二、调用子目录下的模块

程序结构如下:

-- src
    |-- mod1.py
    |-- lib
    |    |-- mod2.py
    |-- test1.py

这时看到test1.py和lib目录(即mod2.py的父级目录),如果想在程序test1.py中导入模块mod2.py ,可以在lib件夹中建立空文件__init__.py文件(也可以在该文件中自定义输出模块接口),然后使用:

from lib.mod2 import *

import lib.mod2.

三、调用上级目录下的文件

程序结构如下:

-- src
    |-- mod1.py
    |-- lib
    |    |-- mod2.py
    |-- sub
    |    |-- test2.py

这里想要实现test2.py调用mod1.py和mod2.py ,做法是我们先跳到src目录下面,直接可以调用mod1,然后在lib上当下建一个空文件__init__.py ,就可以像第二步调用子目录下的模块一样,通过import  lib.mod2进行调用了。具体代码如下:

import sys
sys.path.append("..")
import mod1
import mod2.mod2
Python 相关文章推荐
全面解读Python Web开发框架Django
Jun 30 Python
Python中lambda的用法及其与def的区别解析
Jul 28 Python
Python正则表达式教程之一:基础篇
Mar 02 Python
python批量实现Word文件转换为PDF文件
Mar 15 Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
Mar 19 Python
Python3.5文件修改操作实例分析
May 01 Python
Python多进程入门、分布式进程数据共享实例详解
Jun 03 Python
pytorch自定义初始化权重的方法
Aug 17 Python
详解基于python-django框架的支付宝支付案例
Sep 23 Python
Python Dataframe常见索引方式详解
May 27 Python
Python通过getattr函数获取对象的属性值
Oct 16 Python
分享PyCharm最新激活码(真永久激活方法)不用每月找安装参数或最新激活码了
Dec 27 Python
在Python中移动目录结构的方法
Jan 31 #Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
Jan 31 #Python
python 爬取微信文章
Jan 30 #Python
python生成验证码图片代码分享
Jan 28 #Python
详解Python网络爬虫功能的基本写法
Jan 28 #Python
Python3实现Web网页图片下载
Jan 28 #Python
Python正则获取、过滤或者替换HTML标签的方法
Jan 28 #Python
You might like
windows下PHP APACHE MYSQ完整配置
2007/01/02 PHP
js实现在同一窗口浏览图片
2014/09/17 Javascript
C++中的string类的用法小结
2015/08/07 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
BootStrap table使用方法分析
2016/11/08 Javascript
Node.js中文件操作模块File System的详细介绍
2017/01/05 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
JS实现移动端触屏拖拽功能
2018/07/31 Javascript
JavaScript变量基本使用方法实例分析
2019/11/15 Javascript
vue elementui tree 任意级别拖拽功能代码
2020/08/31 Javascript
[51:06]2018DOTA2亚洲邀请赛3月29日 小组赛A组 KG VS Liquid
2018/03/30 DOTA
Python实现二分法算法实例
2015/02/02 Python
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
python3大文件解压和基本操作
2017/12/15 Python
Python IDLE清空窗口的实例
2018/06/25 Python
Django框架下静态模板的继承操作示例
2019/11/08 Python
如何将你的应用迁移到Python3的三个步骤
2019/12/22 Python
Numpy之reshape()使用详解
2019/12/26 Python
通过python检测字符串的字母
2020/02/18 Python
Python全面分析系统的时域特性和频率域特性
2020/02/26 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
Django url 路由匹配过程详解
2021/01/22 Python
一款基于css3的动画按钮代码教程
2014/11/23 HTML / CSS
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
马来西亚网上花店:FlowerAdvisor马来西亚
2020/01/03 全球购物
出纳岗位职责范本
2013/12/01 职场文书
企业优秀员工事迹材料
2014/05/28 职场文书
法人授权委托书
2014/09/16 职场文书
干部四风问题整改措施思想汇报
2014/10/13 职场文书
公务员党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
档案管理员岗位职责
2015/02/12 职场文书
Nginx配置根据url参数重定向
2022/04/11 Servers
CentOS7安装GlusterFS集群以及相关配置
2022/04/12 Servers