เรียง List ใน Python
ข้อมูลเรียงตามลำดับธรรมชาติหรือ property ที่เลือกได้
เรียง List ใน Python คืออะไร?
ข้อมูลเรียงตามลำดับธรรมชาติหรือ property ที่เลือกได้
เรียงตัวเลขและ record ด้วย sorted
ควรใช้เมื่อใด?
- เรียนรู้ไวยากรณ์ Python ผ่านโค้ดที่รันได้
- สร้างพื้นฐานสำหรับโจทย์ที่ซับซ้อนขึ้น
- ทดลองแนวคิดโดยไม่ต้องติดตั้งบนเครื่อง
โค้ดตัวอย่าง
main.py
students = [
{"name": "Lin", "score": 88},
{"name": "Ada", "score": 95},
{"name": "Sam", "score": 91},
]
ranked = sorted(students, key=lambda student: student["score"], reverse=True)
print([student["name"] for student in ranked])
ผลลัพธ์ที่คาดหวัง
['Ada', 'Sam', 'Lin']
หลักการทำงาน
sorted สร้าง list ใหม่ ส่วน key กำหนดเกณฑ์โดยไม่เปลี่ยน object เดิม
เปลี่ยนค่าและรันโปรแกรมด้วย คอมไพเลอร์ Python ออนไลน์ของ CodeUtility โดยไม่ต้องติดตั้ง Python
แบบฝึกหัด
ลองเปลี่ยน input และทดสอบกรณีขอบก่อนใช้ชุดข้อมูลที่ใหญ่ขึ้น
- คาดเดา output ก่อนรัน
- รองรับ input ว่างหรือไม่ถูกต้อง
- แยก logic เป็นฟังก์ชันและเพิ่ม test case