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中的mock库对Python代码进行模拟测试
Apr 16 Python
Django中实现点击图片链接强制直接下载的方法
May 14 Python
Python中的推导式使用详解
Jun 03 Python
Python基于Matplotlib库简单绘制折线图的方法示例
Aug 14 Python
Python实现微信翻译机器人的方法
Aug 13 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
Nov 15 Python
Python之——生成动态路由轨迹图的实例
Nov 22 Python
如何通过Django使用本地css/js文件
Jan 20 Python
使用Python求解带约束的最优化问题详解
Feb 11 Python
Python3 利用face_recognition实现人脸识别的方法
Mar 13 Python
python 日志模块 日志等级设置失效的解决方案
May 26 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
Dec 03 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
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
2017/07/20 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
PHP进阶学习之Geo的地图定位算法详解
2019/06/19 PHP
javascript网页关闭时提醒效果脚本
2008/10/22 Javascript
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
jquery实现效果比较好的table选中行颜色
2014/03/25 Javascript
javascript中数组array及string的方法总结
2014/11/28 Javascript
vue.js中mint-ui框架的使用方法
2017/05/12 Javascript
JavaScript中this关键字用法实例分析
2018/08/24 Javascript
浅谈vux之x-input使用以及源码解读
2018/11/04 Javascript
解决layui的input独占一行的问题
2019/09/10 Javascript
微信小程序实现图片压缩
2019/12/03 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
JS+CSS实现炫酷光感效果
2020/09/05 Javascript
python使用电子邮件模块smtplib的方法
2016/08/28 Python
Python爬虫实现(伪)球迷速成
2018/06/10 Python
tensorflow: 查看 tensor详细数值方法
2018/06/13 Python
python 递归深度优先搜索与广度优先搜索算法模拟实现
2018/10/22 Python
手动安装python3.6的操作过程详解
2020/01/13 Python
Django中的session用法详解
2020/03/09 Python
HTML5的标签的代码的简单介绍 HTML5标签的简介
2012/05/28 HTML / CSS
html5定位并在百度地图上显示的示例
2014/04/27 HTML / CSS
加拿大健康、婴儿和美容产品在线购物:Well.ca
2016/11/30 全球购物
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
linux面试题参考答案(5)
2014/09/01 面试题
护理实习自我鉴定
2013/12/14 职场文书
八一演出活动方案
2014/02/03 职场文书
《诺贝尔》教学反思
2014/02/17 职场文书
元旦红领巾广播稿
2014/02/19 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
严以律己学习心得体会
2016/01/13 职场文书
2016优秀毕业生个人事迹材料
2016/02/29 职场文书
python-for x in range的用法(注意要点、细节)
2021/05/10 Python
Nginx反向代理至go-fastdfs案例讲解
2021/08/02 Servers
MySQL窗口函数的具体使用
2021/11/17 MySQL
Python中第三方库Faker的使用详解
2022/04/02 Python