将字符串添加到列表项的开头

时间:2019-08-28 19:44:38

标签: python string list

我已生成问题列表,并将其存储在列表中。我需要在列表中每个项目的开头添加一个问题编号。显然,我需要从1开始增加到列表的末尾。

项目:5 + 6?应该成为Q1:5 + 6?

亲切的问候, 马特

3 个答案:

答案 0 :(得分:1)

您可以使用Python list comprehensions并枚举:

original_list = ['question one?', 'question two?']
new_list = [f'Q{index}: {item}' for index, item in enumerate(original_list,1)]

这将导致:

new_list
['Q1: question one?', 'Q2: question two?']

答案 1 :(得分:0)

[ "Q"+str(n+1)+": "+v for n,v in enumerate(["a", "b"])]
Out[7]: ['Q1: a', 'Q2: b']

会做到的。

答案 2 :(得分:0)

如果您愿意,那么理解力是一个简洁的Python工具 要更改列表而不创建新列表,您只需在原始列表上循环并逐个更改每个元素。 如果list或strig大量使用字符串插值%,则通常比串联(+)快。我通常甚至将它用于一些小的任务来养成习惯。

questions = ["Item: 2 + 4", "Item: 2 - 4"]

for i, q in enumerate(questions):
    questions[i] = "Q%s%s" % (i + 1, q[4:])


print (questions)
相关问题