เมื่อจำเป็นต้องแยกแถวที่มีประเภทข้อมูลที่ซับซ้อน จะใช้เมธอด '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' หรือไม่
-
สิ่งนี้ถูกกำหนดให้กับตัวแปร
-
ซึ่งจะแสดงเป็นเอาต์พุตบนคอนโซล