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

Python – เรียงลำดับรายการตามตัวเลข


เมื่อจำเป็นต้องจัดเรียงองค์ประกอบของรายการตามตัวเลข จะใช้วิธี "สูงสุด", "สูงสุด" นอกจากนี้เรายังจะใช้วิธีการ 'sorted' ฟังก์ชัน 'lambda' และ 'ljust'

ตัวอย่าง

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

my_list = [4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]

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

print("The list after sorting is : " )
my_list.sort()
print(my_list)

my_temp_val = map(str, my_list)

my_max_length = max(map(len, my_temp_val))

my_result = sorted(my_list, key = lambda index : (str(index).ljust(my_max_length, 'a')))

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

ผลลัพธ์

The list is :
[4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]
The list after sorting is :
[1, 10, 33, 120, 122, 390, 460, 541, 892, 2611, 2909, 4344, 11239, 48292]
The resultant list is :
[10, 11239, 120, 122, 1, 2611, 2909, 33, 390, 4344, 460, 48292, 541, 892]

คำอธิบาย

  • รายการสตริงถูกกำหนดและแสดงบนคอนโซล

  • รายการถูกจัดเรียงโดยใช้วิธีการจัดเรียงและแสดงบนคอนโซล

  • วิธี 'แผนที่' ใช้เพื่อแปลงองค์ประกอบทั้งหมดในรายการเป็นสตริง

  • สิ่งนี้ถูกกำหนดให้กับตัวแปร

  • พบองค์ประกอบสูงสุดในรายการและกำหนดให้กับตัวแปร

  • วิธีการเรียงลำดับใช้เพื่อจัดเรียงรายการ และคีย์คือฟังก์ชันแลมบ์ดาโดยให้เหตุผลด้านซ้าย

  • สิ่งนี้ถูกกำหนดให้กับผลลัพธ์

  • สิ่งนี้จะแสดงเป็นเอาต์พุตบนคอนโซล