簡體   English   中英

通過導入Python全局變量?

[英]Python Global Variable Through Import?

這種形式的全局變量聲明是Python的良好實踐嗎? 在某些情況下,我的字典在B.py中沒有數據。 只是看起來不一致。

classes.py

class Aclass:
    dict = {}

myClass = Aclass()

A.py:

from classes import myClass

myClass.dict["variable"]

B.py:

from classes import myClass

print str(myClass.dict)

A.py在B.py之前處理。 這會為我打印一個空的dict {}

這是前一篇文章中簡化的問題: Django中的URL和上下文處理器之間的共享/全局字典 非常感謝您的見解。

如果在A.py中將其更改為

myClass.dict["variable"]="hello"

(正如評論中所指出)

然后問題變得有趣。

沒關系,但最好有另一個接口(函數,方法)來處理這些數據。 這是一種存儲模塊狀態的方法。 您調用myClass(!)的對象與a和b相同。

多個導入是安全的,除了返回相同的已加載模塊外什么也不做。

暫無
暫無

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

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