从多个文件访问和编辑字典

时间:2013-05-28 23:26:24

标签: python python-2.7 dictionary multiple-files

Python 2.7中的多个文件可以访问字典吗? 可以从其他文件导入类和函数,但字典可以完成相同的操作吗? 我可能有一个带有字典的文件和各种各样的函数,其他文件可以用它来处理字典,但是有必要为我想做的每一件事写一个函数吗?我希望能够从另一个文件中做基本的事情,比如打印字典的一部分 基本上,我想知道的是:导入文件是否也导入文件中的字典,如果没有,我该怎么办?

如果 ,我还想知道是否可以从其他文件编辑原始字典。除了打印它的一部分,我可以更改原始字典中的值吗?

我无法在互联网上找到任何相关信息。请教育我,stackoverflow。

2 个答案:

答案 0 :(得分:5)

是的,字典并不特殊,可以导入到其他模块中,就像您在Python模块中定义的任何其他模块一样。与函数和类一样,字典是Python对象,导入只会在当前模块中为您导入的值创建新引用。

你可以从任何地方操纵字典;字典是可变结构,一旦你有引用它就可以改变该字典的键和值。

答案 1 :(得分:0)

file1.py

d = {'a':5}

file2.py

from file1 import d
d['a'] += 3
def whatever():
   pass

file3.py

from file2 import whatever
from file1 import d
print d
#now if you wanted the unmodified value from file1 you could reload it
import file1
reload(file1)
from file1 import d
print d  #note only in this file is d reverted ... any other place would have the modified dictionary