3

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

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

我一直无法在互联网上找到有关此的任何信息。请教育我,stackoverflow。

4

2 回答 2

5

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

您可以在任何地方操作字典;字典是可变结构,一旦你引用了它,你就可以改变那个字典的键和值。

于 2013-05-28T23:27:17.237 回答
1

文件1.py

d = {'a':5}

文件2.py

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

文件3.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
于 2013-05-28T23:29:04.010 回答