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

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

如何在與另一個列表相對應的嵌套列表中添加值?

如何在與另一個列表相對應的嵌套列表中添加值?

慕蓋茨4494581 2021-12-17 16:43:28
我正在建立一個線性連接,我有兩個列表:a = [1,1,1,2,2,3,3,3,4]b = [1,3,7,2,3,4,7,8,9]a[i] 相關 b[i]我重組b為c:c = [[1, 3], [7], [2, 3], [4], [7, 8], [9]]我嘗試a在每個子列表中添加相應的值c以獲得:d = [[1, 1, 3], [1, 7], [2 ,2, 3], [3, 4], [3, 7, 8], [4, 9]]c原來in 的每個子列表中的第一個值b與alike相關c[0][0] = b[0],并添加a[0]到c[0], c[1][0] = b[2],因此添加a[2]到c[1]。如果 sublist inc和 sublist = 的第一個值,則b[i]添加a[i]到每個子列表。我被卡住了。
查看完整描述

2 回答

?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

您可以從中構建一個迭代器a并使用它的連續切片,itertools.islice以便根據 中子列表的長度使用它c,但只從每個切片中選擇第一項:


from itertools import islice


a = [1,1,1,2,2,3,3,3,4]

c = [[1, 3], [7], [2, 3], [4], [7, 8], [9]]

a_ = iter(a)


[[list(islice(a_, len(j)))[0]] + [i for i in j] for j in c]

輸出


[[1, 1, 3], [1, 7], [2, 2, 3], [3, 4], [3, 7, 8], [4, 9]]


查看完整回答
反對 回復 2021-12-17
?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

另一種方法。基本方式。


#!/bin/python


a = [1,1,1,2,2,3,3,3,4]


b = [1,3,7,2,3,4,7,8,9]


c = [[1, 3], [7], [2, 3], [4], [7, 8], [9]]


#d = [[1, 1, 3], [1, 7], [2 ,2, 3], [3, 4], [3, 7, 8], [4, 9]]


element_count=0

d=[]

for x in c:

    print (a[element_count])

    print(x)

    d.append([a[element_count]]+x)

    element_count+=len(x)


查看完整回答
反對 回復 2021-12-17
  • 2 回答
  • 0 關注
  • 171 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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