python各层级目录下import方法代码实例


Posted in Python onJanuary 20, 2020

这篇文章主要介绍了python各层级目录下import方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

以前经常使用python2.现在很多东西都切换到了python3,发现很多东西还是存在一些差异化的。跨目录import是常用的一种方法,并且有不同的表现形式,新手很容易搞混。有必要这里做个总结,给大家科普一下:

1 同级目录下的调用:

同级目录下的调用比较简单,一般使用场景是不同类的相互调用。不用考虑路径问题,常用的格式是:from file import * 或者 from file import class/function 等。

下面以一个例子作为说明:

程序结构:

➜ dir_test git:(master) ✗ tree
.
├── pycache
│  └── test1.cpython-37.pyc
├── dir1
│  └── test3.py
├── test1.py
└── test2.py

代码:

from test1 import *
# the below is also ok
#from test1 import dir_test

def test_file2():
  print("this is test file2")

dir_test()
test_file2()

2 子目录下的调用:

子目录下的函数调用,正常的情况下,需要包含子目录的,常用的格式如下:form dir1.file import * 或者: from dir1 import file等。

下面以一个例子说明:

➜ dir_test git:(master) ✗ tree
.
├── pycache
│  └── test1.cpython-37.pyc
├── dir1
│  ├── pycache
│  │  └── test3.cpython-37.pyc
│  └── test3.py
├── test1.py
└── test2.py

代码:

from test1 import *
# the below is also ok
#from test1 import dir_test

from dir1.test3 import *

def test_file2():
  print("this is test file2")

dir_test()
dir1_test()

3 上级目录下的调用:

上级目录调用要比上两种复杂,这里要用到sys函数,首先要在将要调用的文件下面建一个空文件:init.py 然后在调用这个文件的文件里面添加:sys.path.append("…"),才可以调用成功:

下面是一个例子:文件结构:

➜ dir_test git:(master) ✗ tree
.
├── pycache
│  └── test1.cpython-37.pyc
├── dir1
│  ├── init.py
│  ├── pycache
│  │  ├── init.cpython-37.pyc
│  │  └── test3.cpython-37.pyc
│  └── test3.py
├── dir2
│  └── test4.py
├── test1.py
└── test2.py

代码:

#!python3

import sys
sys.path.append("..")
from dir1.test3 import *
#import dir1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的SQLAlchemy框架使用入门
Apr 29 Python
Python的SQLalchemy模块连接与操作MySQL的基础示例
Jul 11 Python
Python正则表达式匹配中文用法示例
Jan 17 Python
pycharm+django创建一个搜索网页实例代码
Jan 24 Python
Tensorflow 实现修改张量特定元素的值方法
Jul 30 Python
Python实现分段线性插值
Dec 17 Python
python爬取Ajax动态加载网页过程解析
Sep 05 Python
python json.dumps中文乱码问题解决
Apr 01 Python
浅析python 动态库m.so.1.0错误问题
May 09 Python
Python调用飞书发送消息的示例
Nov 10 Python
使用Python爬虫爬取小红书完完整整的全过程
Jan 19 Python
在python中读取和写入CSV文件详情
Jun 28 Python
Python 识别12306图片验证码物品的实现示例
Jan 20 #Python
如何基于python实现归一化处理
Jan 20 #Python
tensorflow入门:tfrecord 和tf.data.TFRecordDataset的使用
Jan 20 #Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
Jan 20 #Python
python如何通过pyqt5实现进度条
Jan 20 #Python
python super用法及原理详解
Jan 20 #Python
tensorflow 变长序列存储实例
Jan 20 #Python
You might like
分享php分页的功能模块
2015/06/16 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
JavaScript实现Sleep函数的代码
2007/03/04 Javascript
node.js中的fs.realpathSync方法使用说明
2014/12/16 Javascript
JavaScript随机生成信用卡卡号的方法
2015/04/07 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
2015/07/20 Javascript
jquery分页插件jquery.pagination.js使用方法解析
2016/04/01 Javascript
JS与HTML结合使用marquee标签实现无缝滚动效果代码
2016/07/05 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
JavaScript 跨域之POST实现方法
2018/05/07 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
electron实现qq快捷登录的方法示例
2018/10/22 Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
2018/12/20 Javascript
浅谈js闭包理解
2019/04/01 Javascript
微信小程序中使用echarts的实现方法
2019/04/24 Javascript
微信小程序后端实现授权登录
2020/02/24 Javascript
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
python中的__init__ 、__new__、__call__小结
2014/04/25 Python
python分批定量读取文件内容,输出到不同文件中的方法
2018/12/08 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
在PyCharm的 Terminal(终端)切换Python版本的方法
2019/08/02 Python
python-numpy-指数分布实例详解
2019/12/07 Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
2020/02/26 Python
Python 必须了解的5种高级特征
2020/09/10 Python
手工制作的豪华英式沙发和沙发床:Willow & Hall
2019/05/03 全球购物
会计毕业生自荐信
2013/11/21 职场文书
实习生自我鉴定范文
2013/12/05 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
2014幼儿园大班工作总结
2014/11/10 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
小学生禁毒教育心得体会
2016/01/15 职场文书
微信小程序实现拍照和相册选取图片
2021/05/09 Javascript
详解CSS中的特指度和层叠问题
2021/07/15 HTML / CSS
Python实现PIL图像处理库绘制国际象棋棋盘
2021/07/16 Python