簡體   English   中英

python將變量添加到導入的模塊

[英]python adding variables to imported modules

我沒有看我以前在網上寫的內容,所以我不小心在ipython中將變量聲明為:

np.zerosn=10

令人驚訝的是,這是允許的。 因此,我認為可能是因為您可以在變量名中命名使用句點,但事實並非如此。 所以我想知道實際發生了什么。 這是否將新變量添加到numpy模塊?

是。

通常,(大多數)Python對象具有動態屬性空間,您可以隨時將所需的內容粘貼到它們上。 模塊只是對象。 它們的屬性空間與全局范圍基本相同。

純python函數是另一個示例(可能令人驚訝),可以在其中粘貼任意屬性,盡管這些屬性與函數的本地范圍無關。

大多數“內置”類型(即在擴展模塊中實現的類型,而不是在__builtins__模塊中找到的類型)及其實例都沒有動態屬性空間。 帶有__slots__純python類型也沒有。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM