您好,登錄后才能下訂單哦!
本篇內容介紹了“Python2、Python3相對路徑和絕對路徑的導入方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
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相對路徑和絕對路徑的導入方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。