Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ตรวจสอบว่าลิสต์หนึ่งเป็น subset ของอีกลิสต์ใน Python

ตรวจสอบว่าลิสต์เล็ก (sublist) เป็น subset ของลิสต์ใหญ่หรือไม่

ใช้ all()

all(x in Alist for x in Asub_list)

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue', 5, 9]
print("Given list ", Alist)
print("Given sublist", Asub_list)
if all(x in Alist for x in Asub_list):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

Asub_list = ['Wed', 5, 9]
print("New sublist", Asub_list)
if all(x in Alist for x in Asub_list):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

ผลลัพธ์

Given list ['Mon', 'Tue', 5, 'Sat', 9]
Given sublist ['Tue', 5, 9]
Sublist is part of bigger list
New sublist ['Wed', 5, 9]
Sublist is not part of bigger list

ใช้ set.issubset()

set(Asub_list).issubset(set(Alist))

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue', 5, 9]
print("Given list ", Alist)
print("Given sublist", Asub_list)
if set(Asub_list).issubset(set(Alist)):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

Asub_list = ['Wed', 5, 9]
print("New sublist", Asub_list)
if set(Asub_list).issubset(set(Alist)):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

ผลลัพธ์

Given list ['Mon', 'Tue', 5, 'Sat', 9]
Given sublist ['Tue', 5, 9]
Sublist is part of bigger list
New sublist ['Wed', 5, 9]
Sublist is not part of bigger list

ใช้ set.intersection()

set(Alist).intersection(Asub_list) == set(Asub_list)

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue', 5, 9]
print("Given list ", Alist)
print("Given sublist", Asub_list)
if set(Alist).intersection(Asub_list) == set(Asub_list):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

Asub_list = ['Wed', 5, 9]
print("New sublist", Asub_list)
if set(Alist).intersection(Asub_list) == set(Asub_list):
    print("Sublist is part of bigger list")
else:
    print("Sublist is not part of bigger list")

ผลลัพธ์

Given list ['Mon', 'Tue', 5, 'Sat', 9]
Given sublist ['Tue', 5, 9]
Sublist is part of bigger list
New sublist ['Wed', 5, 9]
Sublist is not part of bigger list