[英]python adding variables to imported modules
我沒有看我以前在網上寫的內容,所以我不小心在ipython中將變量聲明為:
np.zerosn=10
令人驚訝的是,這是允許的。 因此,我認為可能是因為您可以在變量名中命名使用句點,但事實並非如此。 所以我想知道實際發生了什么。 這是否將新變量添加到numpy模塊?
是。
通常,(大多數)Python對象具有動態屬性空間,您可以隨時將所需的內容粘貼到它們上。 模塊只是對象。 它們的屬性空間與全局范圍基本相同。
純python函數是另一個示例(可能令人驚訝),可以在其中粘貼任意屬性,盡管這些屬性與函數的本地范圍無關。
大多數“內置”類型(即在擴展模塊中實現的類型,而不是在__builtins__
模塊中找到的類型)及其實例都沒有動態屬性空間。 帶有__slots__
純python類型也沒有。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.