-1

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

例如

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

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

4

3 回答 3

1

你可能需要做coords = File1.A1

于 2013-10-13T11:13:44.583 回答
1

在 File1 中使用字典,然后在 File2 中收集它

文件 1 内容:

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

文件2内容:

from File1 import d
coords = 'A1'
location = d[coords]
于 2013-10-13T11:16:17.477 回答
0

尝试:

coords = File1.A1

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

于 2013-10-13T11:14:51.903 回答