【发布时间】:2018-05-15 09:50:30
【问题描述】:
我想用另一个文件中的方法更改主文件中的类字典。当我调用该方法时,它的行为就像它完成了它的工作一样,但是当再次从主文件调用字典时,它会丢失附加的条目。
主文件,testmain.py:
import testside
class MainClass(object):
objects = {'three': 'four'}
if __name__ == '__main__':
testside.SideClass.add_to('one', 'two') # prints {'three': 'four', 'one': 'two'}
print(MainClass.objects) # prints {'three': 'four'}
侧文件,testside.py:
import testmain
class SideClass(object):
@staticmethod
def add_to(name, thing):
testmain.MainClass.objects[name] = thing
print(testmain.MainClass.objects)
如何从文件外部更改类值?请注意,我不想创建MainClass() 的实例。
【问题讨论】:
-
这个例子不应该工作,因为你正在创建一个循环导入
-
谢谢,我很担心循环导入,但我还没有找到关于如何避免它们的好读物。你有什么要推荐的吗?
标签: python python-3.x class import