我正在尝试创建条目(1000(,而我从名称开始。我想出了一些名称,并计划将添加到数字0-9的条目复制到创建更多唯一名称的条目。因此,我将一个用于循环内部的循环。是否不可能将索引更改为字符串并将其添加到列表中的项目末尾。
我考虑过增量,因为我最近在C 中进行了很多编码,但这无效,因为当您使用Python的范围函数时,您不需要增加。我考虑了更改循环的顺序
name = ['event', 'thing going on', 'happening', 'what everyones talkin', 'that thing', 'the game', 'the play', 'outside time', 'social time', 'going out', 'having fun']
for index in range(10):
for item in name:
name.append(item+str(index))
return name
我希望它打印出['event0', 'thing going on1', ... 'having fun10']
谢谢!
使用列表理解
- 枚举(( - 方法添加了一个对峰值的计数器,并以枚举对象的形式返回。
ex。
name = ['event', 'thing going on', 'happening', 'what everyones talkin', 'that thing', 'the game', 'the play', 'outside time', 'social time', 'going out', 'having fun']
new_list = [x+str(index) for index,x in enumerate(name)]
print(new_list)
O/P:
['event0', 'thing going on1', 'happening2', 'what everyones talkin3', 'that thing4', 'the game5', 'the play6', 'outside time7', 'social time8', 'going out9', 'having fun10']
使用新列表并在此处附加:
newName = []
for index in range(10):
for item in name:
newName.append(item+str(index))
return newName
每次通过循环运行时,您都会在列表中添加更多元素。列出一个新的空列表,并将元素附加到该列表中。这样,您的初始列表保持不变。
循环的内部循环正在将新元素附加到数组中。
您只需要
for index in range(10):
name[index] = name[index] + str(index)
现在,您的数组包含您的预期输出。这更改了您的原始阵列顺便说一句。如果您希望它保持不变,请执行以下操作。
newArray = []
for index in range(10):
newArray [index] = name[index] + str(index)
它将按照您的期望工作:
name = ['event', 'thing going on', 'happening', 'what everyones talkin', 'that thing',
'the game', 'the play', 'outside time', 'social time', 'going out', 'having fun']
for index in range(10):
name[index] = name[index]+str(index)
print (name)
输出:
['event0', 'thing going on1', 'happening2', 'what everyones talkin3', 'that thing4', 'the game5', 'the play6', 'outside time7', 'social time8', 'going out9', 'having fun10']