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命令行参数解析OptionParser类用法实例
Oct 09 Python
python删除指定类型(或非指定)的文件实例详解
Jul 06 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
Python基于回溯法子集树模板解决取物搭配问题实例
Sep 02 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
Mar 13 Python
Flask框架Flask-Principal基本用法实例分析
Jul 23 Python
python实现汽车管理系统
Nov 30 Python
Python根据成绩分析系统浅析
Feb 11 Python
python线程安全及多进程多线程实现方法详解
Sep 27 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
Jan 18 Python
深入了解Python 方法之类方法 & 静态方法
Aug 17 Python
如何利用python实现列表嵌套字典取值
Jun 10 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
DOTA2 6.87版本后新眼位详解攻略
2020/04/20 DOTA
yii实现图片上传及缩略图生成的方法
2014/12/04 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
用js来解决ajax读取页面乱码
2010/11/28 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
javascript实现随机读取数组的方法
2015/08/03 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
JS实现多张图片预览同步上传功能
2017/06/23 Javascript
JavaScript事件处理程序详解
2017/09/19 Javascript
mongoose更新对象的两种方法示例比较
2017/12/19 Javascript
微信小程序radio组件使用详解
2018/01/31 Javascript
JavaScript比较同一天的时间大小实例代码
2018/02/09 Javascript
深入Node TCP模块的理解
2019/03/13 Javascript
使用VueCli3+TypeScript+Vuex一步步构建todoList的方法
2019/07/25 Javascript
使用vue实现多规格选择实例(SKU)
2019/08/23 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
vue项目初始化到登录login页面的示例
2019/10/31 Javascript
JavaScript实现简单随机点名器
2019/11/21 Javascript
html5以及jQuery实现本地图片上传前的预览代码实例讲解
2021/03/01 jQuery
Python中常见的数据类型小结
2015/08/29 Python
用python实现简单EXCEL数据统计的实例
2017/01/24 Python
python3.6 如何将list存入txt后再读出list的方法
2019/07/02 Python
VSCode配合pipenv搞定虚拟环境的实现方法
2020/05/17 Python
Scrapy框架介绍之Puppeteer渲染的使用
2020/06/19 Python
Html5页面中的返回实现的方法
2018/02/26 HTML / CSS
Champion官网:美国冠军运动服装
2017/01/25 全球购物
美国著名的品牌折扣店:Burlington
2017/06/08 全球购物
兰蔻英国官网:Lancome英国
2019/04/30 全球购物
Nip + Fab官网:英国美容品牌
2019/08/26 全球购物
给导游的表扬信
2014/01/10 职场文书
《少年王冕》教学反思
2014/04/11 职场文书
会议室标语
2014/06/21 职场文书
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技
Python FuzzyWuzzy实现模糊匹配
2022/04/28 Python