ในบทช่วยสอนนี้ เราจะเรียนรู้การวนลูปย้อนหลัง (Backward Iteration) ใน Python ซึ่งเป็นเทคนิคที่มีประโยชน์ในบางกรณี เราจะใช้ฟังก์ชัน range() เพื่อวนลูปในทิศทางย้อนหลัง
ฟังก์ชัน range()
range() มีการใช้งานหลากหลาย สำหรับตัวเลข มีสูงสุด 3 อาร์กิวเมนต์:
- 1 อาร์กิวเมนต์: ค่าสูงสุด (upper bound) เริ่มจาก 0 เพิ่มทีละ 1
- 2 อาร์กิวเมนต์: ค่าต่ำสุด (lower bound) และค่าสูงสุด เพิ่มทีละ 1
- 3 อาร์กิวเมนต์: ค่าต่ำสุด, ค่าสูงสุด, และค่า step (การเพิ่ม/ลด)
สำหรับการวนลูปย้อนหลัง เราจะใช้ 3 อาร์กิวเมนต์ โดยกำหนด step เป็นค่าลบ
ตัวอย่างที่ 1: นับถอยหลังจาก 10 ถึง 0
# loop which iterates from 10 to 0
# range(lower bound, upper bound, increment value)
for i in range(10, -1, -1):
print(i)ผลลัพธ์
10 9 8 7 6 5 4 3 2 1 0
ตัวอย่างที่ 2: วนลูปย้อนหลังใน List
nums = ['Hafeez', 'Aslan', 'Kareem']
for i in range(len(nums) - 1, -1, -1):
print(nums[i])ผลลัพธ์
Kareem Aslan Hafeez
สรุป
การใช้ range(start, stop, step) ด้วย step เป็นค่าลบ ช่วยให้วนลูปย้อนหลังได้ง่าย หากมีข้อสงสัย สามารถถามได้ในส่วนความคิดเห็น