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

ตรวจสอบว่ารายการหนึ่งเป็นส่วนย่อยของรายการอื่นใน Python . หรือไม่


ในการวิเคราะห์ข้อความและสาขาอื่นๆ ของการวิเคราะห์ข้อมูล มักจะจำเป็นต้องค้นหาว่ารายการที่ระบุนั้นเป็นส่วนหนึ่งของรายการที่ใหญ่กว่าแล้วหรือไม่ ในบทความนี้ เราจะเห็นโปรแกรม python ที่จะใช้ข้อกำหนดนี้

พร้อมทุกอย่าง

เราใช้ for loop เพื่อตรวจสอบว่าองค์ประกอบของรายการที่เล็กกว่ามีอยู่ในรายการที่ใหญ่กว่าหรือไม่ ฟังก์ชันทั้งหมดช่วยให้มั่นใจได้ว่าการประเมินแต่ละรายการจะคืนค่าเป็นจริง

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue',5,9]

# Given list and sublist
print("Given list ",Alist)
print("Given sublist",Asub_list)

# With all
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")

# Checkign again
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

พร้อมเซ็ตย่อย

ในแนวทางนี้ เราจะแปลงรายการเป็นชุดและใช้ฟังก์ชันชุดย่อยเพื่อตรวจสอบว่ารายการขนาดเล็กเป็นส่วนหนึ่งของรายการที่ใหญ่กว่าหรือไม่

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue',5,9]

# Given list and sublist
print("Given list ",Alist)
print("Given sublist",Asub_list)

# With all
if(set(Asub_list).issubset(set(Alist))):
   print("Sublist is part of bigger list")
else:
   print("Sublist is not part of bigger list")

# Checkign again
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

การใช้ทางแยก

ฟังก์ชันทางแยกค้นหาองค์ประกอบทั่วไประหว่างสองชุด ในแนวทางนี้ เราจะแปลงรายการเป็นชุดและใช้ฟังก์ชันทางแยก หากผลลัพธ์ของทางแยกเหมือนกับรายการย่อย เราจะสรุปว่ารายการย่อยเป็นส่วนหนึ่งของรายการ

ตัวอย่าง

Alist = ['Mon','Tue', 5, 'Sat', 9]
Asub_list = ['Tue',5,9]

# Given list and sublist
print("Given list ",Alist)
print("Given sublist",Asub_list)

# With all
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")

# Checkign again
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