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多维/嵌套字典数据无限遍历的实现
Nov 04 Python
Django如何实现内容缓存示例详解
Sep 24 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
May 29 Python
解决python Markdown模块乱码的问题
Feb 14 Python
tensorflow模型继续训练 fineturn实例
Jan 21 Python
flask框架url与重定向操作实例详解
Jan 25 Python
解决python -m pip install --upgrade pip 升级不成功问题
Mar 05 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
Mar 09 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
Mar 31 Python
python实现单机五子棋
Aug 28 Python
python 解决Windows平台上路径有空格的问题
Nov 10 Python
利用Python脚本写端口扫描器socket,python-nmap
Jul 23 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
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
php-accelerator网站加速PHP缓冲的方法
2008/07/30 PHP
php输出xml必须header的解决方法
2014/10/17 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
YII2框架使用控制台命令的方法分析
2020/03/18 PHP
推荐40款强大的 jQuery 导航插件和教程(上篇)
2012/09/14 Javascript
JavaScript父子窗体间的调用方法
2015/03/31 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
2015/08/26 Javascript
JavaScript检查子字符串是否在字符串中的方法
2016/02/03 Javascript
深入学习AngularJS中数据的双向绑定机制
2016/03/04 Javascript
JavaScript for循环 if判断语句(学习笔记)
2017/10/11 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
详解Vue结合后台的列表增删改案例
2018/08/21 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
Python实现的石头剪子布代码分享
2014/08/22 Python
python的random模块及加权随机算法的python实现方法
2017/01/04 Python
Python3中简单的文件操作及两个简单小实例分享
2017/06/18 Python
Python视频爬虫实现下载头条视频功能示例
2018/05/07 Python
Python实现的NN神经网络算法完整示例
2018/06/19 Python
Python3数据库操作包pymysql的操作方法
2018/07/16 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
python 同时读取多个文件的例子
2019/07/16 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
Python基于paramunittest模块实现excl参数化
2020/04/26 Python
python能在浏览器能运行吗
2020/06/17 Python
Python实现中英文全文搜索的示例
2020/12/04 Python
使用CSS实现阅读进度条
2017/02/27 HTML / CSS
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
CSS3实现文字描边的2种方法(小结)
2020/02/14 HTML / CSS
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
集团财务总监岗位职责
2015/04/03 职场文书
军事博物馆观后感
2015/06/05 职场文书
JavaWeb Servlet开发注册页面实例
2022/04/11 Java/Android