Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python – เรียงเมทริกซ์ตามความถี่ของ None


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