เมื่อต้องการลบ tuple ที่มีสมาชิกเป็น None ทุกตัวออกจากลิสต์ สามารถใช้ list comprehension และ all() ได้
ตัวอย่าง
my_tuple = [(None, 12), (None, None), (33, 54), (32, 13), (None,)]
print("The tuple is :")
print(my_tuple)
my_result = [index for index in my_tuple if not all(element == None for element in index)]
print("The result is :")
print(my_result)
ผลลัพธ์
The tuple is : [(None, 12), (None, None), (33, 54), (32, 13), (None,)] The result is : [(None, 12), (33, 54), (32, 13)]
คำอธิบาย
กำหนดลิสต์ของ tuple ที่บางตัวมี None ทั้งหมด บางตัวมีผสม แสดงผล
ใช้ list comprehension ตรวจสอบ
not all(element == None for element in index)all(... == None)จะเป็น True ถ้าทุกตัวเป็น None ใช้notกลับค่า -> เก็บเฉพาะ tuple ที่ไม่ใช่ None ทั้งหมดแสดงผลลัพธ์ tuple ที่เหลือ