我有一个按顺序出现的元素列表,我想一次向列表中添加一个。
所需输出:
'first_page'
'first_page + second_page'
'first_page + second_page + third_page'
'first_page + second_page + third_page + fourth_page'
...
数据结构:
page_list = ['first_page', 'second_page', 'third_page', 'fourth_page']
如何获得想要的输出?谢谢!
到目前为止,我可以使用此功能将下一页添加到上一页:
new_list = []
for index, elem in enumerate(page_list):
if(index<(len(page_list)-1)):
new_list.append(elem + ' + ' + page_list[index+1])
else:
new_list.append(elem)
返回:
['first_page + second_page',
'second_page + third_page',
'third_page + fourth_page',
'fourth_page']
使用
join()
创建分隔字符串。
您可以使用原始列表的递增切片作为要切片的列表。
page_list = ['first_page', 'second_page', 'third_page', 'fourth_page']
new_list = [' + '.join(page_list[:i]) for i in range(1, len(page_list)+1)]
print(new_list)
或者您可以在加入之前继续附加到另一个列表。
new_list = []
pages = []
for page in page_list:
pages.append(page)
new_list.append(' + '.join(pages)