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

โปรแกรมหลามเพื่อจัดเรียงแถวเมทริกซ์โดยผลรวมของความแตกต่างต่อเนื่องขององค์ประกอบ


ตัวอย่าง

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

def diff_summation_elem(row):
   return sum([abs(row[index + 1] - row[index]) for index in range(0, len(row) - 1)])

my_list = [[97, 6, 47, 3], [6, 88, 3, 26], [71, 53, 34, 65], [15, 36, 5,62]]

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

my_list.sort(key=diff_summation_elem)

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

ผลลัพธ์

The list is :
[[97, 6, 47, 3], [6, 88, 3, 26], [71, 53, 34, 65], [15, 36, 5, 62]]
The resultant list is :
[[71, 53, 34, 65], [15, 36, 5, 62], [97, 6, 47, 3], [6, 88, 3, 26]]

คำอธิบาย

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

  • มันใช้วิธี 'abs' และวิธีการ 'sum' พร้อมกับความเข้าใจรายการเพื่อวนซ้ำในรายการและรับค่าดัชนีเฉพาะ

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

  • รายการถูกจัดเรียงตามคีย์ที่เป็นวิธีการ (กำหนดไว้ก่อนหน้านี้)

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