Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีใช้ For Loop ใน Python


For Loop ใน Python ใช้เพื่อ Iterate ผ่านจำนวนองค์ประกอบหรือช่วง Integer เฉพาะเจาะจง องค์ประกอบอาจเป็นของ Array, String หรือ Iterable Object ใดๆ ใน Python

For Loop เป็น Looping Statement ที่ใช้บ่อยที่สุด คำถามโปรแกรมส่วนใหญ่ที่เราพบ ใช้ For Loop ใน Solution ของมัน

For ใน Range Loop

Python มี For In Range Loop มันรับค่า Integer 2 ค่า ระบุช่วงที่ตัวแปรต้อง Iterate หากระบุเพียงหนึ่ง Integer Parameter ค่าที่ระบุจะถูกนำมาเป็น End ของ Range และ Start จะเป็น 0 โดย Default

Syntax

for variable in range( starting value, end value)
for variable in range( end value)

Note: For Loop ใน Python Iterate น้อยกว่าค่า End อยู่ 1 หมายความว่า หาก Start และ End คือ 1 และ 5 ตามลำดับ Loop จะ Iterate สำหรับ 1,2,3,4 ค่า Start Inclusive แต่ End ไม่ Inclusive

ตัวอย่าง

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

Reverse For Loop

For In Range Loop สามารถรับพารามิเตอร์ตัวที่สาม -1 ได้ ซึ่งระบุว่า For Loop จะ Iterate ย้อนกลับ Loop เริ่มจาก Start Value และ Iterate ลดลงจนถึง End Value (ไม่ Inclusive)

ตัวอย่าง

for i in range(5,0,-1):
    print(i,end=" ")

ผลลัพธ์

5 4 3 2 1

ระบุพารามิเตอร์ตัวที่สามใน For Loop

พารามิเตอร์ตัวที่สามใน For Loop สามารถปรับเปลี่ยนได้เพื่อใช้ For Loop แบบต่างๆ พารามิเตอร์ตัวที่สาม จริงๆ แล้วระบุ Steps (ขั้นกระโดด) ที่ตัวแปรควรกระโดด หากไม่ระบุ จะเป็น 1 โดย Default

หากพารามิเตอร์เป็นลบ ระบุว่า Loop จะ Iterate ย้อนกลับ จำนวนขั้นย้อนกลับจะถูกกำหนดโดยพารามิเตอร์นี้

หากพารามิเตอร์เป็นบวก Loop จะ Iterate ไปข้างหน้า จำนวนขั้นไปข้างหน้าจะถูกกำหนดโดยพารามิเตอร์นี้

มาลองเข้าใจด้วยตัวอย่างด้านล่าง

ตัวอย่าง

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 In Loop

Loop นี้ใช้ Iterate ผ่าน Iterable Object เช่น String หรือ Array ไม่สามารถใช้ Iterate ผ่าน Integer Range เฉพาะเจาะจงได้

Syntax

for variable in iterable object

Loop นี้ Iterate ผ่านทุกองค์ประกอบของ Iterable Object ทีละอัน โดยไม่คำนึงถึง Index หากต้องการ Index ให้ใช้ 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

Note: ตามที่ชัดเจนจากตัวอย่างข้างต้น ตัวแปรใน For In Loop จะเก็บองค์ประกอบของ Iterable Object ทีละอัน ในขณะที่ตัวแปรใน For In Range Loop จะเก็บ Index ขององค์ประกอบ