เมื่อจำเป็นต้องกรองแถวที่ไม่เปลี่ยนรูปซึ่งแทนคีย์พจนานุกรมจากเมทริกซ์ สามารถใช้รายการความเข้าใจและวิธีการ 'isinstance' ได้
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
ตัวอย่าง
my_list = [[24, 15, [32, 33, 12]], ["pyt", 8, (14, 54)], [{15:24}, 13, "fun"], [True, "cool"]] print("The list is :") print(my_list) my_result = [row for row in my_list if all(isinstance(element, int) or isinstance(element, bool) or isinstance(element, float) or isinstance(element, tuple) or isinstance(element, str) for element in row)] print("The result is :") print(my_result)
ผลลัพธ์
The list is : [[24, 15, [32, 33, 12]], ['pyt', 8, (14, 54)], [{15: 24}, 13, 'fun'], [True, 'cool']] The result is : [['pyt', 8, (14, 54)], [True, 'cool']]
คำอธิบาย
-
รายการของรายการถูกกำหนดและแสดงบนคอนโซล
-
ความเข้าใจรายการใช้เพื่อวนซ้ำองค์ประกอบ และวิธีการ 'isinstance' ใช้เพื่อตรวจสอบว่าองค์ประกอบนั้นเป็นของประเภทข้อมูลเฉพาะหรือไม่
-
ถ้าใช่ จะถูกเก็บไว้ในรายการและถูกกำหนดให้กับตัวแปร
-
ซึ่งจะแสดงเป็นเอาต์พุตบนคอนโซล