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抓取淘宝下拉框关键词的方法
Jul 08 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
Nov 16 Python
Python实现单词翻译功能
Jun 06 Python
Python中Scrapy爬虫图片处理详解
Nov 29 Python
Python实现的HMacMD5加密算法示例
Apr 03 Python
Python简单计算文件MD5值的方法示例
Apr 11 Python
python发送邮件脚本
May 22 Python
使用Python向DataFrame中指定位置添加一列或多列的方法
Jan 29 Python
python3连接kafka模块pykafka生产者简单封装代码
Dec 23 Python
用python拟合等角螺线的实现示例
Dec 27 Python
python3通过udp实现组播数据的发送和接收操作
May 05 Python
Python WebSocket长连接心跳与短连接的示例
Nov 24 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
PR值查询 | PageRank 查询
2006/12/20 PHP
ajax+php打造进度条代码[readyState各状态说明]
2010/04/12 PHP
非常好用的两个PHP函数 serialize()和unserialize()
2012/02/04 PHP
thinkphp常见路径用法分析
2014/12/02 PHP
PHP 进度条函数的简单实例
2017/09/19 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
2018/06/10 PHP
JavaScipt基本教程之前言
2008/01/16 Javascript
理解 JavaScript Scoping & Hoisting(二)
2015/11/18 Javascript
一步步教大家编写酷炫的导航栏js+css实现
2016/03/14 Javascript
Bootstrap框架结合jQuery仿百度换肤功能实例解析
2016/09/17 Javascript
jQuery旋转插件jqueryrotate用法详解
2016/10/13 Javascript
js实现可输入可选择的select下拉框
2016/12/21 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
JavaScript实现百度搜索框效果
2020/03/26 Javascript
JS使用对象的defineProperty进行变量监控操作示例
2019/02/02 Javascript
详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决
2019/04/14 Javascript
小程序多图列表实现性能优化的方法步骤
2019/05/28 Javascript
python使用marshal模块序列化实例
2014/09/25 Python
Python做文本按行去重的实现方法
2016/10/19 Python
python操作文件的参数整理
2019/06/11 Python
三步实现Django Paginator分页的方法
2019/06/11 Python
Python3内置模块之base64编解码方法详解
2019/07/13 Python
python中的列表与元组的使用
2019/08/08 Python
俄罗斯苹果优质经销商商店:iPort
2020/05/27 全球购物
高中生的学习总结自我鉴定
2013/10/26 职场文书
人力资源部培训专员岗位职责
2014/01/02 职场文书
本科生的职业生涯规划范文
2014/01/09 职场文书
潘婷洗发水广告词
2014/03/14 职场文书
公司年会抽奖活动主持词
2014/03/31 职场文书
市场营销工作计划书
2014/09/15 职场文书
先进集体申报材料
2014/12/25 职场文书
迎新生欢迎词
2015/01/23 职场文书
《巨人的花园》教学反思
2016/02/19 职场文书
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python
什么是css原子化,有什么用?
2022/04/24 HTML / CSS
Redis实现短信验证码登录的示例代码
2022/06/14 Redis