浅谈Python2、Python3相对路径、绝对路径导入方法


Posted in Python onJune 22, 2018

os.path.dirname() 获取父目录

os.path.basename() #获取文件名或者文件夹名

python2缺省为相对路径导入,python3缺省为绝对路径导入

python2绝对路径导入

from __future__ import absolute_import

python2缺省会搜索上一级目录、上上级目录

解决方案:

import platform
pver=platform.python_version()
pversion= int(pver.split('.')[0])
try:
 if pversion==2:
  print(1)
  from .A import aa
 else:
 print(2)
 from A import aa
except:
 print(3)
 from A import aa

异常处理版:

try:
 from .A import aa
 print(12)
except:
 print(22)
 from A import aa

其他重点

1、包之所以为包,取决于是否有__init__.py文件

2、相对路径导入仅用于包内,同一个顶级包内

3、当前目录:

play$ python main.py

play为当前目录

play$ python test/main.py

play/test为当前目录

play$ python -m test.main

play为当前目录

出现SystemError: Parent module '' not loaded, cannot perform relative import错误一个原因为包内使用相对路径,改用python -m可解决。

以上这篇浅谈Python2、Python3相对路径、绝对路径导入方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Socket编程入门教程
Jul 11 Python
python读取json文件并将数据插入到mongodb的方法
Mar 23 Python
python版本的仿windows计划任务工具
Apr 30 Python
详解pyqt5 动画在QThread线程中无法运行问题
May 05 Python
对numpy Array [: ,] 的取值方法详解
Jul 02 Python
详解Python字符串切片
May 20 Python
Django接收自定义http header过程详解
Aug 23 Python
Django之模板层的实现代码
Sep 09 Python
Python对Tornado请求与响应的数据处理
Feb 12 Python
python实现查找所有程序的安装信息
Feb 18 Python
解决python父线程关闭后子线程不关闭问题
Apr 25 Python
Python基于当前时间批量创建文件
May 07 Python
Python基于pandas实现json格式转换成dataframe的方法
Jun 22 #Python
深入浅析Python的类
Jun 22 #Python
基于python绘制科赫雪花
Jun 22 #Python
python3读取csv和xlsx文件的实例
Jun 22 #Python
django admin 后台实现三级联动的示例代码
Jun 22 #Python
python使用turtle库与random库绘制雪花
Jun 22 #Python
Python3导入CSV文件的实例(跟Python2有些许的不同)
Jun 22 #Python
You might like
人大复印资料处理程序_输入篇
2006/10/09 PHP
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
php下图片文字混合水印与缩略图实现代码
2009/12/11 PHP
一个不易被发现的PHP后门代码解析
2014/07/05 PHP
php实现设计模式中的单例模式详解
2014/10/11 PHP
accesskey 提交
2006/06/26 Javascript
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
javascript中直接写php代码的方法
2013/07/31 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
js实现PC端根据IP定位当前城市地理位置
2017/02/22 Javascript
vue中用H5实现文件上传的方法实例代码
2017/05/27 Javascript
NodeJS爬虫实例之糗事百科
2017/12/14 NodeJs
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
如何解决webpack-dev-server代理常切换问题
2019/01/09 Javascript
详解js创建对象的几种方法及继承
2019/04/12 Javascript
JS使用new操作符创建对象的方法分析
2019/05/30 Javascript
jQuery带控制按钮轮播图插件
2020/07/31 jQuery
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
python thrift搭建服务端和客户端测试程序
2018/01/17 Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
2018/12/10 Python
解决Pytorch训练过程中loss不下降的问题
2020/01/02 Python
python中return如何写
2020/06/18 Python
Python实现GIF图倒放
2020/07/16 Python
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
Holland & Barrett爱尔兰:英国领先的健康零售商
2019/03/31 全球购物
公司前台接待岗位职责
2013/12/03 职场文书
单位人事专员介绍信
2014/01/11 职场文书
应届护士求职信范文
2014/01/26 职场文书
安全宣传标语
2014/06/10 职场文书
民族精神月活动总结
2014/08/28 职场文书
银行领导班子四风对照检查材料
2014/09/27 职场文书
学校开学标语
2014/10/06 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
python绘图subplots函数使用模板的示例代码
2021/04/30 Python
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js