เมื่อจำเป็นต้องแยกแถวที่มีประเภทข้อมูลที่ซับซ้อน จะใช้เมธอด 'isinstance' และความเข้าใจรายการ
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน
my_list = [[13, 1,35], [23, [44, 54], 85], [66], [75, (81, 2), 29, 7]]
my_result = [row for row in my_list if any(isinstance(element, list) or isinstance(element, tuple) or isinstance(element, dict) or isinstance(element, set) for element in row)]
print("The list is :")
print(my_list)
print("The resultant list is :")
print(my_result) ผลลัพธ์
The list is : [[13, 1, 35], [23, [44, 54], 85], [66], [75, (81, 2), 29, 7]] The resultant list is : [[23, [44, 54], 85], [75, (81, 2), 29, 7]]
คำอธิบาย
-
รายการของรายการถูกกำหนดและแสดงบนคอนโซล
-
ความเข้าใจรายการใช้เพื่อวนซ้ำรายการและดูว่าองค์ประกอบนั้นเป็นของประเภท 'รายการ' โดยใช้วิธีการ 'isinstance' หรือไม่
-
สิ่งนี้ถูกกำหนดให้กับตัวแปร
-
ซึ่งจะแสดงเป็นเอาต์พุตบนคอนโซล