如何在Python 2.7中将文本(.txt)文件读作.py文件?

时间:2014-03-26 17:17:26

标签: python file python-2.7 module

我有一个共享文件夹,其中包含我希望程序引用的文本文件,就好像它是.py文件一样。例如,我的.txt文件中有一个我在程序中引用的字典。如何从文本文件导入字典?我是否逐行阅读?或者有没有办法欺骗python认为它是.py文件。

以下示例类似于我的.txt文件:

#There are some comments here and there

#lists of lists
equipment = [['equip1','hw','1122','3344'],['equip2','hp','1133','7777'],['equip3','ht','3333','2745']]

#dictionaries
carts = {'001':'Rev23', '002':'Rev11','003':'Rev7'}

#regular lists
stations = ("1", "2", "3", "4", "11", "Other") 

2 个答案:

答案 0 :(得分:3)

您需要的是JSON文件。

示例:假设您有source.txt,其中包含以下内容:

{"hello": "world"}

然后,在您的python脚本中,您可以使用json.load()将JSON数据结构加载到python字典中:

import json 

with open('source.txt', 'rb') as f:
    print json.load(f)

打印:

{u'hello': u'world'}

你也可以使用exec(),但我不推荐它。这是一个仅用于教育目的的例子:

source.txt

d = {"hello": "world"}

你的剧本:

with open('test.txt', 'rb') as f:
    exec(f)
    print d

打印:

{'hello': 'world'}

希望有所帮助。

答案 1 :(得分:3)

如果您完全信任源.txt文件,请查看execfile