python3 import運用心得總結

2021-08-20 09:20:34 字數 624 閱讀 7029

這是我通過對同csdn的另一位博主講解這個板塊的部落格研究和自行實驗後,自己的心得

在我看來,匯入方式的分類可分為絕對匯入和相對匯入(相對於當前import語句所在檔案的目錄)

絕對匯入:

import a.b

from a import b

相對匯入:

from . import b    (從當前目錄)

from ..a import b  (相對於a目錄的上上層目錄,單個'.'代表上層,兩個代表上上層,依次類推)

記住packege每層都必須存在乙個_init_.py 不然python會識別不出此目錄是packege,以至於import packege失敗

其實一般出錯是出錯在相對匯入,其雖然簡單,但更易出錯

推薦使用try except來避免此類錯誤發生,導致程式出錯

try:

from . import b    

from .a import b

except exception:

import a.b

from a import b

(可能其中目錄表達有錯,但意思就是先try相對匯入,如果出錯就捕獲異常用絕對匯入)

由於寫部落格當天時間較緊,就只能先寫到這了

Python3 變數命名空間 import 整理

每個函式 function 有自己的命名空間,稱local namespace,記錄函式的變數。每個模組 module 有自己的命名空間,稱global namespace,記錄模組的變數,包括functions classes 匯入的modules module級別的變數和常量。build in ...

python 模組相互import

模組a中import b,而在模組b中import a。這時會怎麼樣呢?這個在python列表中由robertchen給出了詳細解釋,抄錄如下 a.py from b import d class c pass b.py from a import c class d pass 為什麼執行a的時候不...

python 連環import問題

首先說明一下這是怎樣的乙個問題 結構如圖所示 如下 c.py import src.a b.py print hello a.py import b 此時,我們執行c.py,會報錯 這是為什麼呢?原因在於當前目錄是c.py所在的目錄,而在這個目錄中沒有b.py這個模組。所以,我們該怎麼辦呢?解決的方...