Python 中的 import * 語句實際上導入了什麼?

Linda Hamilton
發布: 2024-11-16 06:33:03
原創
604 人瀏覽過

What Does the `import *` Statement Actually Import in Python?

Import * 語句匯入什麼

在 Python 中,import * 語句將指定模組中的所有物件匯入到目前模組中。這允許使用導入模組中導出的符號(變數、類別、方法等),而無需在它們前面添加模組名稱前綴。

範例:

>>> from math import *
>>> pi
3.141592653589793
>>> sin(pi/2)
1.0
登入後複製

與明確導入的比較:

但是,使用 import *通常不鼓勵使用,因為:

  • 命名空間衝突:匯入的物件可以覆蓋目前模組中的現有符號。
  • 效率低:匯入許多物件會減慢程式速度。
  • 缺乏文件:它沒有明確記錄導入物件的來源。

相反,更好的做法是:

  • 僅匯入特定物件: 使用 from module import object 僅匯入所需的物件。
  • 導入模組及其命名空間:使用導入模組作為別名透過模組名稱或別名存取導入的物件。

例外:

有些庫可能有專門設計為透過 import * 導入的子模組。例如,Pygame 函式庫的 pygame.locals 子模組包含常用的常數和函式。

從子模組導入:

從子模組導入需要明確規範,即使在子模組內使用 import * 時也是如此。例如, from urllib import * 導入所有子模組,如urllib.request。

以上是Python 中的 import * 語句實際上導入了什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板