亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何同時合并兩個列表?

如何同時合并兩個列表?

一只甜甜圈 2022-10-18 14:41:52
list1=[a,b,c,d]list2=[d,e,f,g]我想要一個list3應該是這樣的:list3=[a-d,b-e,c-f,d-g]請告訴我如何像我一樣循環執行此操作,list1并且list2有許多實體。list1 和 list2 包含字符串。例如:list1=['cat','dog']list2=['dog','cat']list3=['cat-dog','dog-cat']
查看完整描述

2 回答

?
米脂

TA貢獻1836條經驗 獲得超3個贊

您可以將zip兩個列表放在一起并同時迭代它們。


list1=[a,b,c,d]

list2=[d,e,f,g]

list3 = [x-y for x,y in zip(list1,list2)]

編輯:我假設你的列表中只有整數,如果你想對字符串做同樣的事情,你可以這樣做:


list1 = ["a", "b", "c", "d"]

list2 = ["d", "e", "f", "g"]

list3 = ["-".join([x, y]) for x, y in zip(list1, list2)]


查看完整回答
反對 回復 2022-10-18
?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

如果您的列表可以有不同的長度,請使用zip_longest:


from itertools import zip_longest


list3 = [x-y for x,y in zip_longest(list1,list2, fillvalue=0)]

如果列表具有相同的長度,它的行為就像通常的一樣zip,如果不是,它用(在這種情況下是零)填充最短的列表fillvalue以匹配另一個的長度,而不是忽略剩余的元素。


如果您的列表包含字符串,則最好使用字符串操作方法并更改填充值。


from itertools import zip_longest


list3 = [str(x) + '-' + str(y) for x,y in zip_longest(list1,list2, fillvalue="")]


查看完整回答
反對 回復 2022-10-18
  • 2 回答
  • 0 關注
  • 127 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號