for loop ใน Python ใช้เพื่อวนซ้ำองค์ประกอบจำนวนหนึ่งหรือช่วงจำนวนเต็มเฉพาะบางช่วง อิลิเมนต์อาจเป็นอาร์เรย์ สตริง หรืออ็อบเจกต์แบบวนซ้ำอื่นๆ ใน Python
for loop เป็นคำสั่งวนรอบที่ใช้บ่อยที่สุด คำถามเกี่ยวกับการเขียนโปรแกรมส่วนใหญ่ที่เราพบมักใช้ for loop ในการแก้ปัญหา
สำหรับวงใน
Python มีช่วงวนรอบ ใช้ค่าจำนวนเต็มสองค่าซึ่งระบุช่วงภายในที่ตัวแปรต้องวนซ้ำ หากระบุพารามิเตอร์จำนวนเต็มเพียงตัวเดียว จำนวนเต็มที่ระบุจะถูกนำมาเป็นจุดสิ้นสุดของช่วงและค่าเริ่มต้นจะเป็น 0 โดยค่าเริ่มต้น
ไวยากรณ์
for variable in range( starting value, end value) for variable in range( end value)
หมายเหตุ: for loop ใน Python วนซ้ำน้อยกว่าค่าสิ้นสุดหนึ่งค่า ซึ่งหมายความว่าหากค่าเริ่มต้นและสิ้นสุดเป็น 1 และ 5 ตามลำดับ การวนซ้ำจะวนซ้ำสำหรับ 1,2,3,4 รวมค่าเริ่มต้นแล้ว แต่ไม่รวมค่าสิ้นสุด
ตัวอย่าง
for i in range(1,5): print(i,end=" ") print() for i in range(5): print(i,end=" ")
ผลลัพธ์
1 2 3 4 0 1 2 3 4
ย้อนกลับสำหรับลูป
for in range loop สามารถใช้พารามิเตอร์ตัวที่สาม -1 ซึ่งระบุว่า for loop จะวนซ้ำในลำดับที่กลับกัน การวนซ้ำเริ่มต้นจากค่าเริ่มต้นและวนซ้ำตามลำดับที่ลดลงจนถึงค่าสิ้นสุด (ไม่รวม)
ตัวอย่าง
for i in range(5,0,-1): print(i,end=" ")
ผลลัพธ์
5 4 3 2 1
ระบุพารามิเตอร์ที่สามในลูป for
พารามิเตอร์ที่สามใน for loop สามารถปรับเปลี่ยนเพื่อใช้ for loop ได้หลายวิธี พารามิเตอร์ที่สาม อันที่จริง ระบุขั้นตอนที่ตัวแปรควรข้าม หากไม่ระบุ จะเป็น 1 ตามค่าเริ่มต้น
หากพารามิเตอร์ที่สามเป็นค่าลบ แสดงว่าลูปจะวนซ้ำในลำดับที่กลับกัน
พารามิเตอร์นี้ระบุจำนวนก้าว (กระโดด) ถอยหลัง
หากพารามิเตอร์เป็นค่าบวก การวนซ้ำจะวนซ้ำตามลำดับไปข้างหน้า พารามิเตอร์นี้จะระบุจำนวนก้าวไปข้างหน้า
มาทำความเข้าใจกับตัวอย่างด้านล่างกันเถอะ
ตัวอย่าง
for i in range(0,11,2): print(i,end=" ") print() for i in range(10,-1,-2): print(i,end=" ")
ผลลัพธ์
0 2 4 6 8 10 10 8 6 4 2 0
สำหรับการวนซ้ำ
ลูปนี้ใช้เพื่อวนซ้ำวัตถุที่วนซ้ำได้ เช่น สตริงหรืออาร์เรย์ ไม่สามารถใช้เพื่อวนซ้ำในช่วงจำนวนเต็มเฉพาะบางช่วงได้
ไวยากรณ์
for variable in iterable object
ลูปนี้วนซ้ำองค์ประกอบทั้งหมดของอ็อบเจ็กต์ iterable ทีละรายการโดยไม่คำนึงถึงดัชนี หากต้องการดัชนี ให้ใช้ for in range loop
ตัวอย่าง
st="Tutorials" for i in st: print(i,end=" ") print() array=[2,4,6,8,10] for i in array: print(i,end=" ") print() for i in range(len(array)): print(array[i],end=" ")
ผลลัพธ์
T u t o r i a l s 2 4 6 8 10 2 4 6 8 10
หมายเหตุ: จากตัวอย่างข้างต้น ตัวแปร in for in loop จะเก็บองค์ประกอบของอ็อบเจ็กต์ที่ iterable ไว้ทีละตัว ในขณะที่ตัวแปรใน for in loop จะเก็บดัชนีขององค์ประกอบ