繁体   English   中英

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

[英]Add string to beginning of list items

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

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

亲切的问候,马特

您可以使用 Python 列表推导式并枚举:

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?']
[ "Q"+str(n+1)+": "+v for n,v in enumerate(["a", "b"])]
Out[7]: ['Q1: a', 'Q2: b']

会做的。

虽然推导式是一种简洁的 Python 工具,但如果您更喜欢更改列表而不创建新列表,您可以简单地循环遍历原始列表并逐个更改每个元素。 如果列表或字符串很大,请使用字符串插值% ,它通常比连接 ( + ) 快。 我通常甚至将它用于小任务以形成习惯。

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

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


print (questions)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM