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

โปรแกรม Python เรียงลำดับ Tuple ตามคีย์ที่กำหนด

กำหนด Tuple งานคือเรียงลิสต์ของ tuple เรียงเพิ่มขึ้นตามคีย์ใดก็ได้ใน tuple ต้องเรียงตามคีย์ที่กำหนด ใช้ sorted() โดยระบุ key=last และเก็บ last เป็นดัชนีคีย์ที่ต้องการเรียง

ตัวอย่าง

Input: A = [(2, 55), (1, 20), (4, 40), (2, 30)] k = 0
Output: [(1, 20), (2, 30), (2, 55), (4, 40)]

คำอธิบาย

เรียงเพิ่มขึ้นใช้คีย์ดัชนี 0

อัลกอริทึม

ขั้นตอนที่ 1: รับค่าคีย์สุดท้าย
ขั้นตอนที่ 2: ใช้ฟังก์ชัน built-in sorted() โดยระบุ key=last เก็บ last เป็นดัชนีคีย์ที่ต้องการเรียง tuple
ขั้นตอนที่ 3: แสดงลิสต์ที่เรียงแล้ว

โค้ดตัวอย่าง

# โปรแกรม Python เรียงลิสต์ของ tuples
# เรียงเพิ่มขึ้นตามคีย์ใดก็ได้
# ดึงคีย์สุดท้าย
def data(n):
    return n[k]

# ฟังก์ชันเรียง tuple
def tuplesort(tup):
    # ส่งฟังก์ชันที่ผู้ใช้กำหนด last
    # เป็นพารามิเตอร์
    return sorted(tup, key=data)

# โค้ดหลัก
a = [(230, 456, 120), (205, 414, 39), (89, 410, 213)]
k = int(input("ป้อนดัชนี ::>"))
print("เรียงแล้ว:")
print(tuplesort(a))

ผลลัพธ์

ป้อนดัชนี ::>2
เรียงแล้ว: [(205, 414, 39), (230, 456, 120), (89, 410, 213)]