一尘不染

Python-如何通过while循环动态创建变量? [duplicate]

python

我想通过Python中的while循环动态创建变量。


阅读 661

收藏
2020-02-05

共1个答案

一尘不染

可以使用字典来完成此任务。字典是键和值的存储。

>>> dct = {'x': 1, 'y': 2, 'z': 3}
>>> dct
{'y': 2, 'x': 1, 'z': 3}
>>> dct["y"]
2

你可以使用变量键名来获得变量变量的效果,而不会带来安全风险。

>>> x = "spam"
>>> z = {x: "eggs"}
>>> z["spam"]
'eggs'

对于你正在考虑做类似事情的情况

var1 = 'foo'
var2 = 'bar'
var3 = 'baz'

列表可能比字典更合适。一个列表代表对象的有序序列,并带有整数索引:

l = ['foo', 'bar', 'baz']
print(l[1])           # prints bar, because indices start at 0
l.append('potatoes')  # l is now ['foo', 'bar', 'baz', 'potatoes']

对于有序序列,列表比整数键类型的字典更方便,因为列表支持迭代的索引顺序,slicingappend和其他操作,将需要尴尬密钥管理与字典。

2020-02-05