從模組匯入所有名稱

from module_name import *

例如:

from math import *
sqrt(2)    # instead of math.sqrt(2)
ceil(2.7)  # instead of math.ceil(2.7)

這會將 math 模組中定義的所有名稱匯入全域性名稱空間,而不是以下劃線開頭的名稱(表示編寫者認為它僅供內部使用)。

警告 :如果已定義或匯入具有相同名稱的功能,則將覆蓋該功能。幾乎總是隻匯入特定名稱 from math import sqrt, ceil推薦的方式

def sqrt(num):
    print("I don't know what's the square root of {}.".format(num))

sqrt(4)
# Output: I don't know what's the square root of 4.

from math import * 
sqrt(4)
# Output: 2.0

僅在模組級別允許加星標的匯入。嘗試在類或函式定義中執行它們會導致 SyntaxError

def f():
    from math import *

class A:
    from math import *

都失敗了:

SyntaxError: import * only allowed at module level