[英]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.