เมื่อต้องการดึงเฉพาะสมาชิกที่เป็นสตริงจากเมทริกซ์ที่มีข้อมูลผสม (mixed matrix) สามารถใช้ list comprehension และ isinstance() ได้
ตัวอย่าง
my_list = [[35, 66, 31], ["python", 13, "is"], [15, "fun", 14]]
print("The list is :")
print(my_list)
my_result = [element for index in my_list for element in index if isinstance(element, str)]
print("The result is :")
print(my_result)
ผลลัพธ์
The list is : [[35, 66, 31], ['python', 13, 'is'], [15, 'fun', 14]] The result is : ['python', 'is', 'fun']
คำอธิบาย
กำหนดเมทริกซ์ที่มีทั้งตัวเลขและสตริง แสดงผล
ใช้ list comprehension แบบ nested วนลูปผ่านแต่ละแถว (index) แล้วแต่ละสมาชิก (element)
ใช้
isinstance(element, str)ตรวจสอบว่าเป็นสตริงหรือไม่ ถ้าใช่เก็บไว้แสดงผลลัพธ์ลิสต์สตริงที่ดึงได้