Python类变量不保留值

2024-04-20 12:06:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我用一个类变量声明了一个类。 模块名my\u moudle\u 1.py 例如:

class my_class:
    my_dict={}#The class variable

def __init__(self):
   return

在另一个模块-my \u moudle \u 2.py中,我写道:

从我的\u moudle \u 1导入我的\u类

在这个模块中有一个类。在我写的class方法中:

我的_我的字典['123']=5

在第三个模块中,我再次写道:

从我的\u moudle \u 1导入我的\u类

当我在我的\u类的实例中检查my \u dict变量值时,我得到 值是{}。 如何在不同的模块中更新类变量并使用它 在另一个文件的实例中?你知道吗

谢谢


Tags: 模块the实例方法pyself声明return
1条回答
网友
1楼 · 发布于 2024-04-20 12:06:21

不应该是这样的。我无法重现这个问题:

你知道吗mymod.py公司你知道吗

class my_class:
    my_dict = {}

    def __init__(self):
       return

my_class.my_dict['foo'] = 'bar'

mymod2.py版本

from mymod import my_class

my_class.my_dict['greeting'] = 'Hello'

你知道吗测试pp.py你知道吗

from mymod import my_class
import mymod2  # will modify my_dict as a side effect

my_class.my_dict['barq'] = 'foo'

print(my_class.my_dict)

$ python3 testapp.py
{'foo': 'bar', 'greeting': 'Hello', 'barq': 'foo'}
$

相关问题 更多 >