ลูปเป็นคุณสมบัติที่สำคัญของการเขียนโปรแกรมหรือภาษาสคริปต์ ความสามารถในการทำงานหลายครั้งเป็นพื้นฐานของทุกภาษา
ใน Python การวนซ้ำทำได้โดยใช้ for
และ while
loops และในบทความนี้เราจะมาดูวิธีใช้งานพร้อมตัวอย่าง
Python สำหรับลูป
for
ลูปใน python สามารถใช้ได้หลายวิธี วิธีหนึ่งที่ง่ายและธรรมดาที่สุดในการทำซ้ำในคอลเล็กชัน
ไวยากรณ์
for i in collection:
statement
คอลเล็กชันอาจเป็นรายการ ชุด ช่วง ฯลฯ i เป็นตัวแปรที่รับค่าขององค์ประกอบที่กำลังทำซ้ำ
my_list = [1, 2, 3, 4, 5]
for i in my_list:
print("Value is:", i)
เอาท์พุต:
Value is 1
Value is 2
Value is 3
Value is 4
Value is 5
คุณสามารถดูวิธีการทำซ้ำรายการตั้งแต่ต้นจนจบ
สำหรับลูปที่มี range()
เมธอด range ใน python ใช้เพื่อสร้างลำดับระหว่างขีดจำกัด สมมติว่าคุณไม่มีรายการแต่คุณต้องการวนซ้ำบางสิ่งตามจำนวนที่ระบุ คุณสามารถใช้ range()
วิธีการ
for i in range(5):
print(i)
เอาท์พุต:
0
1
2
3
4
หมายเหตุ:ค่าอยู่ระหว่าง 0 ถึง 4 ไม่ใช่ 0 ถึง 5
range()
ฟังก์ชันจะส่งกลับลำดับของตัวเลข โดยเริ่มต้นจาก 0 โดยค่าเริ่มต้น และเพิ่มขึ้นทีละ 1 (โดยค่าเริ่มต้น) และสิ้นสุดที่จำนวนที่ระบุ
หากเราต้องการมีค่าเริ่มต้นและค่าที่เพิ่มขึ้นต่างกัน เราใช้:
for i in range(10, 30, 5):
print(x)
เอาท์พุต:
10
15
20
25
ในตัวอย่างข้างต้น เราเริ่มต้นจาก 10 เราสิ้นสุดที่ 25 และเราเพิ่มขึ้น 5
สำหรับวนซ้ำด้วยอย่างอื่น
else
คีย์เวิร์ดใน for
loop ระบุกลุ่มของโค้ดที่จะดำเนินการหลังจากวนรอบเสร็จสิ้น
for i in range(6):
print(i)
else:
print("Finished looping.")
เอาท์พุต:
0
1
2
3
4
5
Finished looping.
หมายเหตุ:ใน if
คำสั่ง มิฉะนั้น block จะดำเนินการเฉพาะเมื่อเงื่อนไขเป็นเท็จ แต่ใน for
วนซ้ำ else
บล็อกจะถูกดำเนินการเสมอ ซ้อนสำหรับลูป
เราสามารถมี for
วนซ้ำภายใน for
ห่วง สิ่งนี้เรียกว่าการวนซ้ำซ้อน
“วงใน” จะถูกดำเนินการหนึ่งครั้งสำหรับการวนซ้ำแต่ละครั้งของ “วงรอบนอก”
ตัวอย่าง:
numbers = [1, 2, 3]
chars = ["a", "b", "c"]
for i in numbers:
for y in chars:
print(x, y)
เอาท์พุต:
1 a
1 b
1 c
2 a
2 b
2 c
3 a
3 b
3 c
Python ขณะวนซ้ำ
while
ลูปรันชุดคำสั่งตราบเท่าที่เงื่อนไขเป็นจริง
ตัวอย่างเช่น:
i = 1
while i < 5:
print("Hello world")
i = i + 1
หมายเหตุ:เราจำเป็นต้องเพิ่มค่าของ i ไม่เช่นนั้นการวนซ้ำจะทำงานตลอดไป ขณะวนซ้ำกับอย่างอื่น
คำสั่ง else ภายใน while
วนรอบดำเนินการหนึ่งครั้งเมื่อเงื่อนไขไม่เป็นจริงอีกต่อไป
ตัวอย่างเช่น:
i = 1
while i < 5:
print("Hello world")
i = i + 1
else:
print("The execution has ended")
เอาท์พุต:
Hello world
Hello world
Hello world
Hello world
The execution has ended
การใช้ตัวแบ่งขณะวนซ้ำ
คำสั่ง break จะใช้หากคุณต้องการหยุดการทำงานของลูป ณ จุดใดจุดหนึ่ง
ในตัวอย่างต่อไปนี้ เราต้องการหยุดการวนซ้ำเมื่อเราพบอักขระ "c":
my_list = ['a', 'b', 'c', 'd', 'e']
for i in my_list:
print(i)
if i == 'c':
print("'c' encountered. Breaking the loop")
break
เอาท์พุต:
a
b
c
'c' encountered. Breaking the loop
การใช้ Continue in while Loop
คีย์เวิร์ด continue ใช้เพื่อข้ามคำสั่งและดำเนินการต่อกับลูปที่เหลือสำหรับการวนซ้ำเฉพาะ
ในตัวอย่างด้านล่าง เราต้องการวนซ้ำเมื่อเราพบ “c”:
my_list = ['a', 'b', 'c', 'd', 'e']
for i in my_list:
if i == 'c':
continue
print(i)
เอาท์พุต:
a
b
d
e
โปรดทราบว่าไม่มีการพิมพ์ "c" ลูปยังคงพิมพ์ “d” และ “e” ต่อไป
สรุป
- The
for
และwhile
ลูปใช้สำหรับวนซ้ำ - ใช้เพื่อดำเนินการชุดคำสั่งหลายครั้งหรือเพื่อทำซ้ำในคอลเลกชัน เช่น รายการ
- The
for
ลูปใน python สามารถใช้กับrange()
กระบวนการ. คุณสามารถระบุทั้งขีดจำกัดล่างและขีดจำกัดบน หรือระบุขีดจำกัดบนเท่านั้น ในกรณีหลัง จะถือว่า 0 เป็นขีดจำกัดล่าง - ใช้
for
วนซ้ำเมื่อคุณรู้ว่าควรดำเนินการวนซ้ำกี่ครั้ง - The
while
loop มีเงื่อนไขและจะทำงานจนกว่าเงื่อนไขจะเป็นเท็จ - The
while
ลูปควรมีกลไกที่จะทำลายเงื่อนไขเสมอ มิฉะนั้นลูปจะทำงานตลอดไป - ใช้ while loop เมื่อคุณไม่ทราบว่าควรดำเนินการวนซ้ำหลายครั้ง
- The
else
บล็อกสามารถใช้ได้กับทั้งfor
และwhile
ห่วง มันจะถูกดำเนินการเสมอ - The
break
คีย์เวิร์ดใช้เพื่อยุติการดำเนินการ จะไม่มีการทำซ้ำอีกหากพบคีย์เวิร์ดตัวแบ่ง - The
continue
คีย์เวิร์ดข้ามการวนซ้ำปัจจุบันและข้ามไปยังการวนซ้ำถัดไปโดยตรง