Hal*_*ius 1 python string variables python-2.7
假设我有以下列表:
candy = ['a','b','c']
fruit = ['d','e','f']
snack = ['g','h','i']
Run Code Online (Sandbox Code Playgroud)
和一个字符串
name = 'fruit'
Run Code Online (Sandbox Code Playgroud)
我想使用字符串name来访问列表及其内容.在这种情况下应该是fruit.我将name用于迭代列表.如:
for x in name:
print x
Run Code Online (Sandbox Code Playgroud)
Sна*_*ƒаӽ 10
您可以这样使用globals():
for e in globals()[name]:
print(e)
Run Code Online (Sandbox Code Playgroud)
输出:
d
e
f
Run Code Online (Sandbox Code Playgroud)
如果您的变量碰巧在某个本地范围内,您可以使用 locals()
或者你可以创建你的字典并访问:
d = {'candy': candy, 'fruit': fruit, 'snack': snack}
name = 'fruit'
for e in d[name]:
print(e)
Run Code Online (Sandbox Code Playgroud)
我不明白你到底想要达到的目的是什么,但这可以通过使用来完成eval.我建议不要使用eval.如果你告诉我们你最终想要达到的目标,那会更好.
>>> candy = ['a','b','c']
>>> fruit = ['d','e','f']
>>> snack = ['g','h','i']
>>> name = 'fruit'
>>> eval(name)
['d', 'e', 'f']
Run Code Online (Sandbox Code Playgroud)
编辑
看看Sнаđошƒаӽ的另一个答案.这将是更好的方式去.eval有安全风险,我不建议使用它.
| 归档时间: |
|
| 查看次数: |
9861 次 |
| 最近记录: |