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_testdef 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
代码:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from test1 import *
# the below is also ok
#from test1 import dir_testfrom 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
代码:
#!python3import sys
sys.path.append("..")
from dir1.test3 import *
#import dir1
python 各层级目录下的import方法相关推荐
- python打开一个文件夹下所有txt文件-python读取一个目录下所有txt里面的内容方法...
实例如下所示: import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文 ...
- python怎么导入txt文件夹-python读取一个目录下所有txt里面的内容方法
实例如下所示: import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文 ...
- python 找出图片中的差异点,python opencv对目录下图片进行去重的技巧
使用python opencv对目录下图片进行去重的方法 版本: 平台:ubuntu 14 / I5 / 4G内存 python版本:python2.7 opencv版本:2.13.4 依赖: 如果系 ...
- python 下载文件-Python实现HTTP协议下的文件下载方法总结
本文介绍了几种常用的python下载文件的方法,具体使用到了htttplib2,urllib等包,希望对大家有帮忙. 1.简单文件下载 使用htttplib2,具体代码如下: h = httplib2 ...
- 如何把 .wrl 文件转成 .ply 文件(python 一次性转换目录下所有文件)
一.概述 wrl :virtual reality world 最近在找一些大场景点云文件,找到了一些 .wrl 文件,但是这些文件需要专门的软件打开才能显示,而我一般用的都是meshlab,所以需要 ...
- python 遍历搜索 目录下所有文件
python 遍历搜索 目录下所有文件 import osdef search_dir_all_files(input_dir):files_list=[]for root, dirs, files ...
- python获取指定目录下的所有指定后缀的文件名
python获取指定目录下的所有指定后缀的文件名 使用到的函数有: os.path.splitext():分离文件名与扩展名 代码如下: #! /usr/bin/python # -*- coding ...
- android 获取图片上某一个文字位置_android 获取手机中的所有图片或某一目录下的图片方法...
获取手机中的所有图片,并过滤获取某一目录下的图片.(注释掉的代码可以按照目录分组) private void getAllPhotoInfo() { new Thread(new Runnable() ...
- Python 连接FTP服务器并实现文件夹下载实例演示,python区分ftp目录下文件和文件夹方法,ftp目录下包含中文名问题处理
Python 连接 FTP 服务器并实现文件夹下载实例演示 第一章:连接 FTP 服务器并实现文件夹下载 ① 连接 FTP 服务器 ② 进入指定目录并显示文件信息 ③ 区分文件和文件夹名 ④ 文件夹名 ...
最新文章
- 图像指针与矩阵格式转换——Mat转uchar*及uchar*转Mat代码实现
- 阿里凑单算法首次公开!打包购商品挖掘系统解析
- 解决‘tf.ResizeNearestNeighbor‘ op is neither a custom op nor a flex op
- 汇编指令prefix rep:
- 我30岁了。现在开始编程,会不会太晚?
- linux查看消息队列的状态,linux – 如何知道某个时间点在消息队列中收到的消息数...
- Zabbix---5 监控linux服务器目录大小
- Python爬虫搜索全网音乐并下载
- js替换字符串中的${xxx}
- 《汉魏风云》2、孙吴兵法第一传人——辛苦的天才曹操
- curry化 js_Curry的js实现
- 群晖nas安装监控后台SurveillanceStation
- ”微信小程序“一场风暴还是过江之鲫
- 植物大战僵尸资源文件提取 总结
- Ceph 学习——OSD读写流程与源码分析(一)
- 阿里云短信平台简单使用
- java连接mysql教程_Java连接MySQL数据库详细教程(附网盘下载地址)
- 用芝麻二维码生成器制作App下载二维码
- SDOI2014 Round1 day2
- 奥鹏计算机应用基础一答案15年,天大15年12月考试《计算机应用基础》大作业考核答案...