首页 > 编程 > Python > 正文

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

2020-02-15 21:58:21
字体:
来源:转载
供稿:网友

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

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

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

python2绝对路径导入

from __future__ import absolute_import

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

解决方案:

import platformpver=platform.python_version()pversion= int(pver.split('.')[0])try: if pversion==2:  print(1)  from .A import aa else: print(2) from A import aaexcept: 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相对路径、绝对路径导入方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林站长站。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表