首頁 >後端開發 >Python教學 >Python 3 導入語句與 Python 2 相比有何變化?

Python 3 導入語句與 Python 2 相比有何變化?

Linda Hamilton
Linda Hamilton原創
2024-11-28 16:13:15717瀏覽

How Have Python 3 Import Statements Changed from Python 2?

Python 3 中導入語句的演進

Python 3 對導入語句進行了重大更改,以提高清晰度並避免歧義。

親戚導入

在 Python 2 中,包內的隱式相對導入被廣泛使用。這意味著模組可以從同一包中的其他模組導入,而無需指定路徑。例如:

# Python 2
from my_module import MyClass

但是,在 Python 3 中,不再支援相對導入。相反,必須使用明確導入或絕對導入。這有助於防止混淆導入是相對導入還是絕對導入。

# Python 3
from .my_module import MyClass

星形導入

星形導入,使用 * 從模組導入所有符號,分別是Python 2 在模組和函數層級都允許。但是,在 Python 3 中,星型導入僅允許在模組層級進行。這有助於提高可讀性並減少潛在的命名空間衝突。

例如,在Python 2 中,允許使用以下內容:

# Python 2
def my_function():
    from math import *

在Python 3 中,必須將其更改為:

# Python 3
def my_function():
    from math import sin, degrees

透過了解import語句中的這些變化,開發人員可以確保他們的程式碼與Python 3 相容並避免歧義和潛在的問題錯誤。

以上是Python 3 導入語句與 Python 2 相比有何變化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn