เมื่อมีรายการตัวเลข เราสามารถย้ายค่า 0 ทั้งหมดไปไว้ท้ายรายการได้อย่างง่ายด้วย List Comprehension ในบรรทัดเดียว
ตัวอย่าง
numbers = [1, 3, 0, 4, 0, 5, 6, 0, 7] # ย้าย 0 ไปท้าย new_list = [num for num in numbers if num != 0] + [num for num in numbers if num == 0] print(new_list) # [1, 3, 4, 5, 6, 7, 0, 0, 0]
ผลลัพธ์
[1, 3, 4, 5, 6, 7, 0, 0, 0]
วิธีทำงาน
- สร้างรายการใหม่จากองค์ประกอบที่ไม่ใช่ 0
- ต่อด้วยรายการของ 0 ทั้งหมด
- ได้ลำดับที่ 0 อยู่ท้ายทั้งหมด
สรุป
เทคนิคนี้สะดวกและกระชับ เหมาะสำหรับการจัดเรียงข้อมูลเบื้องต้น