读取一个字符串并使用它来读取另一个文件的变量值

时间:2013-10-13 11:11:51

标签: python file variables

我正在使用Python 3.3.2,我希望我的代码采用字符串,并使用它在另一个文件中查找具有相同名称的变量。

E.g。

File1.py包含:

global A1
A1 = ['Plain']
global A2
A2 = ['Beach']
global A3
A3 = ['Swamp']

和File2.py包含:

import File1
coords = A1
location = eval(coords)

但无论我如何格式化我拥有的东西;我总是得到错误:

Traceback (most recent call last):
  File "G:/Python/evaltest.py", line 2, in <module>
    startLocation = A1
NameError: name 'A1' is not defined

我知道错误本身就是一个排序问题,但我不知道在告诉字符串之前我怎么调用变量?

3 个答案:

答案 0 :(得分:1)

您可能需要执行coords = File1.A1

答案 1 :(得分:1)

在File1中使用字典,然后将其收集到File2

File1内容:

d = {'A1':['Plain'], 'A2':['Beach'], 'A3':['Swamp']}

File2内容:

from File1 import d
coords = 'A1'
location = d[coords]

答案 2 :(得分:0)

尝试:

coords = File1.A1

原因是python访问这个变量引用文件名。