ฉันกำลังปรับโครงสร้างโค้ดเก่าของฉันและเจอสิ่งนี้:
alist.sort(cmp_items)
def cmp_items(a, b):
if a.foo > b.foo:
return 1
elif a.foo == b.foo:
return 0
else:
return -1
รหัสใช้งานได้ (และฉันเขียนไว้เมื่อ 3 ปีก่อน!) แต่ฉันไม่พบสิ่งนี้ที่บันทึกไว้ในเอกสาร Python และทุกคนใช้sorted()
เพื่อใช้การจัดเรียงแบบกำหนดเอง ใครช่วยอธิบายได้ไหมว่าทำไมถึงได้ผล
sorted()
และsort()
นำเสนอการจัดเรียงแบบกำหนดเองในลักษณะเดียวกันมากขึ้นโมดูโลความแตกต่างในการเรียกประชุม