導出函數如果我有以下內容的模塊/文件foo.py
:不從Python模塊
from math import sqrt
def foo():
pass
如果我將其導入另一個腳本,sqrt
也模塊foo
內定義。
import foo
dir(foo)
的輸出是
[..., # other things
'foo',
'sqrt']
如何避免這種情況?即,要麼指定sqrt
不被導出,要麼僅導出特定功能 - 在這種情況下,僅導出用戶定義的功能。我知道,對於用戶定義的函數,您可以在模塊內通過前綴下劃線來私有地定義它們,但在這種情況下,它不是用戶定義的函數,所以我不能用下劃線前綴來定義它。
爲什麼你需要防止這種情況?這是正常的python行爲,您向模塊提出了所有在其中定義的名稱。 –