第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

檢查元組數(shù)組中的匹配值 - python

檢查元組數(shù)組中的匹配值 - python

江戶川亂折騰 2023-07-11 10:36:29
好的,我有兩個元組數(shù)組。我想檢查數(shù)組二(在其子數(shù)組中)是否具有數(shù)組一中的匹配元素。如果是這樣,我想將 True 或 False 值附加到Array One的元組中例如結(jié)果應(yīng)該是:[ ('Rabbits', [('/home/white', 'white rabbits', False), ('/home/black', 'black rabbits', True), ('/home/green', 'green rabbits', True)]), ('Cats', [('/ans/pink', 'pink cats', True), ('/ans/purple', 'purple cats', False), ('/home/grey', 'grey cats', True)]), ('Hippos', [('/home/red', 'red hippo', False)])]陣列一[ ('Rabbits', [('/home/white', 'white rabbits'), ('/home/black', 'black rabbits'), ('/home/green', 'green rabbits')]), ('Cats', [('/ans/pink', 'pink cats'), ('/ans/purple', 'purple cats'), ('/home/grey', 'grey cats')], ('Hippos', ['/home/red', 'red hippo'])),  ]陣列二[ ('Rabbits', [('/home/black', 'black rabbits'), ('/home/green', 'green rabbits')]), ('Cats', [('/ans/pink', 'pink cats'), ('/home/grey', 'grey cats')]), ('Hippos', [])  ]當(dāng)前嘗試 1:(給定一個數(shù)組,每個元素將附加四次 3x false 和 1x True)def parse_selectedmenu(array_one, array_two):    # boolean flag used when rendering checkbox 'ticked' in template    selected = True    not_selected = False     index = 0    # array_one = list(array_one)    # array_two = list(array_two)    final_array = []    for array_one_name, default_items in array_one:        final_array.append([array_one_name])        # loop through the ticked "made available" items in post data        for array_two_name, custom_items in array_two:            # loop through default sub menu items in default menu            for default_item in default_items:                for custom_item in custom_items:                    # if a requested menu item exists in default sub menu                     if default_item[0] == custom_item[0] and default_item[1] == custom_item[1]:                        if len(default_item) <= 2:                            mylist = list(default_item)                            # append selcted against matched menu item in default menu items
查看完整描述

2 回答

?
至尊寶的傳說

TA貢獻(xiàn)1789條經(jīng)驗 獲得超10個贊

看來您在輸入數(shù)據(jù)中使用括號時存在一些細(xì)微的不一致,我冒昧地糾正了這些不一致。完成此操作后,為了真正解決問題,我認(rèn)為將第二個數(shù)組轉(zhuǎn)換為字典以便于包含測試是有意義的。這給出:


from pprint import pprint


array_1 = [('Rabbits', [('/home/white', 'white rabbits'), 

                        ('/home/black', 'black rabbits'), 

                        ('/home/green', 'green rabbits')]), 

           ('Cats', [('/ans/pink', 'pink cats'),

                     ('/ans/purple', 'purple cats'),

                     ('/home/grey', 'grey cats')]), 

           ('Hippos', [('/home/red', 'red hippo')])] 



array_2 = [('Rabbits', [('/home/black', 'black rabbits'),

                        ('/home/green', 'green rabbits')]), 

           ('Cats', [('/ans/pink', 'pink cats'),

                     ('/home/grey', 'grey cats')]),

           ('Hippos', [])]


d = dict(array_2)


out = []

for species, tups in array_1:

    lst = []

    for tup in tups:

        if tup in d[species]:

            lst.append(tup + (True,))

        else:

            lst.append(tup + (False,))

    out.append((species, lst))


pprint(out)

輸出:


[('Rabbits',

  [('/home/white', 'white rabbits', False),

   ('/home/black', 'black rabbits', True),

   ('/home/green', 'green rabbits', True)]),

 ('Cats',

  [('/ans/pink', 'pink cats', True),

   ('/ans/purple', 'purple cats', False),

   ('/home/grey', 'grey cats', True)]),

 ('Hippos', [('/home/red', 'red hippo', False)])]


查看完整回答
反對 回復(fù) 2023-07-11
?
拉風(fēng)的咖菲貓

TA貢獻(xiàn)1995條經(jīng)驗 獲得超2個贊

第一個數(shù)組中有一些括號拼寫錯誤,我已更正它們。


以下代碼應(yīng)該可以工作:


l1=[('Rabbits', [('/home/white', 'white rabbits'), ('/home/black', 'black rabbits'), ('/home/green', 'green rabbits')]), ('Cats', [('/ans/pink', 'pink cats'), ('/ans/purple', 'purple cats'), ('/home/grey', 'grey cats')]), ('Hippos', [('/home/red', 'red hippo')]), ]

l2=[('Rabbits', [('/home/black', 'black rabbits'), ('/home/green', 'green rabbits')]), ('Cats', [('/ans/pink', 'pink cats'), ('/home/grey', 'grey cats')]), ('Hippos', []) ]


m=[i[1][k] for i in l2 for k in range(len(i[1]))]

for i in range(len(l1)):

    for k in range(len(l1[i][1])):

        if l1[i][1][k] in m:

            l1[i][1][k]+=(True,)

        else:

            l1[i][1][k]+=(False,)

print(l1)


查看完整回答
反對 回復(fù) 2023-07-11
  • 2 回答
  • 0 關(guān)注
  • 168 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號