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

Python – จัดเรียงเมทริกซ์ตามจำนวนองค์ประกอบที่มากกว่าองค์ประกอบก่อนหน้า


เมื่อจำเป็นต้องจัดเรียงเมทริกซ์ตามจำนวนองค์ประกอบที่มากกว่าองค์ประกอบก่อนหน้า จะใช้ฟังก์ชันทำความเข้าใจรายการและวิธี 'len' โดยใช้ฟังก์ชัน

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

ตัวอย่าง

def fetch_greater_freq(row):

   return len([row[idx] for idx in range(0, len(row) - 1) if row[idx] < row[idx + 1]])

my_list = [[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]]

print("The list is :")
print(my_list)

my_list.sort(key=fetch_greater_freq)

print("The resultant list is :")
print(my_list)

ผลลัพธ์

The list is :
[[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]]
The resultant list is :
[[5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25], [11, 3, 25, 99, 10]]

คำอธิบาย

  • มีการกำหนดเมธอดชื่อ 'fetch_greater_freq ซึ่งรับรายการเป็นพารามิเตอร์

  • รายการมีการวนซ้ำและมีการเข้าถึงและตรวจสอบองค์ประกอบเฉพาะเพื่อดูว่าองค์ประกอบนั้นน้อยกว่าองค์ประกอบที่ต่อเนื่องกันหรือไม่

  • ความยาวของมันถูกส่งคืนเป็นผลลัพธ์ของเมธอด

  • นอกเมธอด รายการของรายการจำนวนเต็มถูกกำหนดและแสดงบนคอนโซล

  • รายการถูกจัดเรียงโดยใช้วิธีการจัดเรียงโดยส่งผ่านวิธีที่กำหนดไว้ก่อนหน้านี้เป็นพารามิเตอร์

  • เอาต์พุตจะแสดงบนคอนโซล