什麼是Python的方式通過給定列表['a', 'b', 'c']
搜索元素b
替換和插入多個項目b1, b2, b3
以便列表最後讀爲['a', 'b1', 'b2', 'b3', 'c']
搜索列表元素,並通過多個項目替換它
10
A
回答
14
使用切片表示法:
>>> lst = ['a', 'b', 'c']
>>> i = lst.index('b') # This raises ValueError if there's no 'b' in the list.
>>> lst[i:i+1] = 'b1', 'b2', 'b3'
>>> lst
['a', 'b1', 'b2', 'b3', 'c']
注意這僅改變第一個匹配項。
3
另一種方法:使用itertools.chain.from_iterable
>>> b = ["b1", "b2", "b3"]
>>> a = ['a', 'b', 'c']
>>> a = [b if x=='b' else [x] for x in a]
>>> a
['a', ['b1', 'b2', 'b3'], 'c']
>>> import itertools
>>> list(itertools.chain.from_iterable(a))
['a', 'b1', 'b2', 'b3', 'c']
>>>
相關問題
- 1. 搜索並替換多個匹配項
- 2. 基本Haskell:通過多個列表搜索相同的元素
- 3. 搜索並替換所有元素
- 4. 搜索項目迭代通過多個列表
- 5. 通過索引替換python列表中的項目..失敗?
- 6. 搜索通過多個表
- 7. 通過多個表搜索
- 8. 搜索並替換文件中的現有陣列元素 - PHP
- 9. 搜索並替換多個詞
- 10. 如何根據索引列表替換多個矢量元素
- 11. 搜索元元素列表
- 12. 搜索替換多個
- 13. 通過地圖列表搜索並返回多個結果
- 14. 在linux/osx上搜索並替換整個項目
- 15. 紅寶石通過多維數組搜索並刪除元素
- 16. 搜索並替換
- 17. 搜索並替換
- 18. SML - 在列表中查找元素,並用它替換
- 19. Python:通過元組列表搜索
- 20. 搜索元素列表
- 21. 搜索列表的元素
- 22. 用另一個列表項目內容替換列表中的元素
- 23. 比較一系列元素並通過XSLT/Xpath替換匹配
- 24. 通過目錄搜索具有多個條件的項目
- 25. 通過多個數組項搜索mongodb
- 26. 多個搜索元素
- 27. 搜索多個元素
- 28. 替換Python列表元素
- 29. 宏通過列表來FINDREPLACE只替換第一個元素列表
- 30. 用另一個列表中的元素替換兩個項目列表中的所有元素
應該發生什麼,如果'B'存在一次以上? –
在我的具體情況下,它保證這些項目是唯一的 – greole