เมื่อจำเป็นต้องเรียงลำดับแถวด้วยจำนวน K หลายเท่า จะมีการกำหนดวิธีการที่ใช้การทำความเข้าใจรายการและตัวดำเนินการโมดูลัส
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
ตัวอย่าง
def multiple_sort_val(row): return len([ele for ele in row if ele % K == 0]) my_list = [[11, 44, 7, 11], [7, 5, 44, 11], [11, 6, 35, 44], [92, 92, 5]] print("The list is :") print(my_list) K = 11 print("The value for K is ") print(K) my_list.sort(key=multiple_sort_val) print("The resultant list is :") print(my_list)
ผลลัพธ์
The list is : [[11, 44, 7, 11], [7, 5, 44, 11], [11, 6, 35, 44], [92, 92, 5]] The value for K is 11 The resultant list is : [[92, 92, 5], [7, 5, 44, 11], [11, 6, 35, 44], [11, 44, 7, 11]]
คำอธิบาย
-
มีการกำหนดวิธีการที่ใช้รายการเป็นพารามิเตอร์
-
มันใช้ความเข้าใจรายการและวิธีการ 'len' เพื่อตรวจสอบว่าทุกรายการหารด้วยค่าเฉพาะของ K ส่งผลให้เป็น 0 เป็นส่วนที่เหลือหรือไม่
-
ขนาดของรายการนี้จะถูกส่งคืนเป็นเอาต์พุต
-
นอกเมธอด รายการของรายการถูกกำหนดและแสดงบนคอนโซล
-
ค่า K ถูกกำหนดและแสดงบนคอนโซล
-
รายการถูกจัดเรียงโดยใช้วิธีการ 'sort' โดยการระบุคีย์เป็นวิธีการที่กำหนดไว้ก่อนหน้านี้
-
นี่คือเอาต์พุตที่แสดงบนคอนโซล