【发布时间】:2022-12-06 18:32:09
【问题描述】:
我想通过知道索引用单个字符串替换列表中的多个字符串。当然我看了这个问题:search for element in list and replace it by multiple items 但是对于我的情况是相反的,假设我有一个列表如下:
lst = ['a', 'b1', 'b2', 'b3', 'c']
我知道我有一个词:
term = 'b1' + ' b2' + ' b3'
我也知道起始索引和该术语的长度
lst[1:1+len(term)] = "<term>" + term + "</term>"
我得到了这个结果:
['a', '<', 't', 'e', 'r', 'm', '>', 'b', '1', ' ', 'b', '2', ' ', 'b', '3', '<', '/', 't', 'e', 'r', 'm', '>']
但是,我的预期输出:
['a', '<term>b1 b2 b3</term>', 'c']
我如何调整它以获得所需的输出?
【问题讨论】:
-
那是因为你改变了一个列表。但为什么您的预期输出以“b”结尾?虽然 len(term) 很长(实际上是 8,所有字符)。因此它将覆盖您的整个列表。
-
您预期输出的最后一个索引是否正确? 'b'?不应该是'c'吗?
-
编辑问题抱歉!
-
一切都好@Erwin!