日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python小技巧:判斷一個列表是否包含另一個列表的全部元素

你應該遇到過需要判斷一個列表是否包含另一個列表的全部元素的場景吧。這種需求在實際工作中非常常見,比如在數(shù)據(jù)篩選、列表匹配以及集合操作等。下面勇哥給大家分享三個日常使用到的小技巧。

方法一:使用all函數(shù)和生成器表達式

例如從一個大的數(shù)據(jù)列表中選取滿足特定條件的子集。勇哥舉個例子:我們需要從一個商品列表中篩選出庫存充足的商品:

def contains(list1, list2):
    return all(item in list1 for item in list2)

# 篩選庫存充足的商品
product_list = [{'name': 'Apple', 'stock': 10}, {'name': 'Banana', 'stock': 5}, {'name': 'Orange', 'stock': 8}]
required_products = ['Apple', 'Banana']

if contains([product['name'] for product in product_list], required_products):
    print("有庫存")
else:
    print("有庫存不足的商品")

# 輸出 :有庫存

方法二:使用set函數(shù)和集合運算

對兩個集合進行操作,例如求并集、交集或差集,這種也是很實用且常用。再舉個栗子:判斷用戶的興趣愛好是否與某個活動的標簽相匹配:

# 1. 內(nèi)置函數(shù)
def contains(list1, list2):
    return set(list2).issubset(set(list1))

# 2. 操作符
def contains2(list1, list2):
    return set(list2) <= set(list1)
user_interests = ['籃球', '游泳', '登山', '音樂']
event_tags = ['籃球', '足球', '音樂']

if contains(user_interests, event_tags):
    print("完全匹配")
else:
    print("不完全匹配")


if contains2(user_interests, event_tags):
    print("完全匹配")
else:
    print("不完全匹配")

# 輸出: 不完全匹配

方法三:嵌套循環(huán)

有時候會遇到一些特殊的場景,比如:需要自定義復雜的條件判斷邏輯來判斷列表之間的關系,這時候用上面兩種方法不太方便,我們就可以遇事不決先循環(huán)一波試試了。最后一個栗子:判斷兩個任務列表的優(yōu)先級是否一致:

def list_contains(List1, List2):
    if len(List1) != len(List2):
        return False

    for task1, task2 in zip(List1, List2):
        if task1['priority'] != task2['priority']:
            return False

    return True

tasks_1 = [{'name': 'Task 1', 'priority': 1}, {'name': 'Task 2', 'priority': 2}]
tasks_2 = [{'name': 'Task 3', 'priority': 1}, {'name': 'Task 4', 'priority': 2}]

if list_contains(tasks_1, tasks_2):
    print("兩個任務列表的優(yōu)先級一致")
else:
    print("兩個任務列表的優(yōu)先級不一致")

# 輸出:優(yōu)先級一致

以上就是勇哥分享的三種簡單實用的處理數(shù)據(jù)的思路及示例代碼,當然如果小伙伴們遇到嵌套比較深可能需要全比對的數(shù)據(jù)或者更復雜的數(shù)據(jù)要處理的時候,就可以自由的擴展方法或者另辟蹊徑了。


網(wǎng)站題目:Python小技巧:判斷一個列表是否包含另一個列表的全部元素
分享路徑:http://m.5511xx.com/article/cdhiidg.html