我有一个包含一个或多个项目的列表:
fruits = ['apple', 'orange', 'pear'] #or could be one or many
我想根据项目数创建变量: 代码:
for i in range(len(fruits)):
"Fruit".format(i) = fruits[i]
我想获得:
Fruit1=apple, Fruit2=orange, Fruit3=pear
任何帮助我怎么能得到这个?
答案 0 :(得分:1)
作为执行此类任务的正确方法,您可以使用字典:
>>> fruits = ['apple', 'orange', 'pear']
>>> d={"Fruit{}".format(i):j for i,j in enumerate(fruits,1)}
>>> d
{'Fruit1': 'apple', 'Fruit2': 'orange', 'Fruit3': 'pear'}
>>> d['Fruit1']
'apple'
注意如果您使用像字典这样的数据结构来解决问题,那么您将获得许多优势,例如,您可以使用dict.values()
和所有值来访问所有值使用dict.keys()
的键也可以更容易与其他数据结构进行交互!
>>> d.keys()
['Fruit1', 'Fruit2', 'Fruit3']
>>> d.values()
['apple', 'orange', 'pear']
答案 1 :(得分:0)
首先,你的任务是倒退的。您尝试在字符串中设置列表索引,而不是在列表索引中设置字符串。否则,我建议使用枚举函数。不要被我的格式化绊倒,我有办法在Python中这样做。
for i, j in enumerate(fruits):
fruits[i] = "Fruit%d=%s" % (i + 1, j)