我想用另一個串列中的元素替換一個串列中的元素,但僅限于第二個串列。
例如:
defaults = ['apple','banana','cherry','date']
data = ['accordion','banjo']
# result: ['accordion','banjo','cherry','date']
我可以通過for回圈來完成,我可以使用以下代碼在一行中完成:
result = [data[i] if i<len(data) else defaults[i] for i,v in enumerate(defaults)]
有沒有更簡單或更直接的方法來做到這一點?
uj5u.com熱心網友回復:
你要:
result = data defaults[len(data):]
如果data可以長于defaults并且您希望長度為defaults最大長度:
result = data[:len(defaults)] defaults[len(data):]
這種使用:被稱為“切片”,更多關于切片串列的資訊在這里python.org on Lists
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/477039.html
標籤:python-3.x 列表
