เมื่อต้องการเรียงลำดับลิสต์ตามจำนวนตัวประกอบ ใช้เมธอดที่ใช้ list comprehension และ modulus ร่วมกับ 'len' เพื่อหาผลลัพธ์
ตัวอย่าง
สาธิตด้านล่าง:
def factor_count(element):
return len([element for index in range(1, element) if element % index == 0])
my_list = [121, 1120, 13540, 221, 1400]
print("The list is :")
print(my_list)
my_list.sort(key=factor_count)
print("The result is :")
print(my_list)
ผลลัพธ์
The list is : [121, 1120, 13540, 221, 1400] The result is : [121, 221, 13540, 1120, 1400]
คำอธิบาย
- กำหนดเมธอด 'factor_count' รับ element คืนค่าจำนวนตัวประกอบ
- นอกเมธอด กำหนดลิสต์และแสดงผล
- เรียงลิสต์ด้วย 'sort' key เป็นเมธอดที่กำหนด
- แสดงผลลัพธ์บนคอนโซล