我有一個names看起來像這樣的串列
names = ['Peter Orson', 'Marc Johnson', 'Peter', 'Johnson']
我想加入該串列的兩個特定元素。
desired_names = ['Peter Orson', 'Marc Johnson', 'Peter Johnson']
警告:
- 我不能使用索引
- 即使其他元素共享某些部分(例如相同的名字),我也只需要定位這兩個單獨的元素
代碼:
regex = re.compile(r'/^Peter$/)
for i in names:
if regex:
i = ' '.join(map(str, regex)) # join with next list element into one string
我認為我有正確的方法來解決我的問題,但我不知道如何加入和替換匹配的字串元素
uj5u.com熱心網友回復:
如評論中所述,您不需要正則運算式來執行此操作:
names = [
"Peter Orson",
"Marc Johnson",
"Peter",
"Johnson",
]
idx = names.index("Peter")
names[idx] = names.pop(idx) " " names[idx]
print(names)
印刷:
['Peter Orson', 'Marc Johnson', 'Peter Johnson']
如果您不確定是否"Peter"在串列中,您可以先檢查:
if "Peter" in names:
idx = names.index("Peter")
names[idx] = names.pop(idx) " " names[idx]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/466049.html
