เมื่อต้องการเรียงเมทริกซ์ตามความถี่ของ 'None' ใช้เมธอดที่รับพารามิเตอร์ ใช้ list comprehension, 'not' และ 'len' เพื่อหาผลลัพธ์
ตัวอย่าง
สาธิตด้านล่าง:
def get_None_freq(row):
return len([element for element in row if not element])
my_list = [[None, 24], [None, 33, 3, None], [42, 24, 55], [13, None, 24]]
print("The list is : ")
print(my_list)
my_list.sort(key = get_None_freq)
print("The result is : ")
print(my_list)
ผลลัพธ์
The list is : [[None, 24], [None, 33, 3, None], [42, 24, 55], [13, None, 24]] The result is : [[42, 24, 55], [None, 24], [13, None, 24], [None, 33, 3, None]]
คำอธิบาย
- กำหนดเมธอด 'get_None_freq' รับลิสต์ พารามิเตอร์ ใช้ list comprehension วนลูป ตรวจสอบด้วย 'not' ว่ามี element ไหนเป็น None แล้วหาความยาว
- คืนค่าความยาวเป็นผลลัพธ์
- นอกเมธอด กำหนดลิสต์และแสดงผล
- เรียงลิสต์ด้วย 'sort' key เป็นเมธอดที่กำหนด
- แสดงผลลัพธ์บนคอนโซล