คำสั่ง for loop เป็นคำสั่งวนซ้ำที่ใช้ควบคุมการทำงานซ้ำๆ ในจำนวนรอบที่แน่นอน ในภาษา Python นั้นคำสั่ง for loop จะแตกต่างจากภาษาอื่นๆ อย่างภาษา C มันมักจะใช้สำหรับการวนอ่านค่าภายในออบเจ็ค เช่น ลิสต์หรือออบเจ็คจากฟังก์ชัน range() เป็นต้น
คำสั่ง for ในภาษา Python ในภาษา Python เรามักจะใช้คำสั่ง for loop กับฟังก์ชัน range() ในการวนอ่านค่าออบเจ็คของตัวเลข ฟังก์ชัน range() นั้นเป็น built-in ฟังก์ชันใช้สำหรับสร้างออบเจ็คของตัวเลข โดยมีพารามิเตอร์ 3 ตัว คือตัวเลขเริ่มต้น ตัวเลขสุดท้าย และค่าที่เปลี่ยนแปลงในลำดับของตัวเลข คำสั่ง for ในภาษา Python ใช้สำหรับทำการวนซ้ำ (loop) โดยจะวนซ้ำตามจำนวนรอบหรือรายการที่กำหนดไว้ใน iterable object เช่น list, tuple, dictionary, set, หรือ string
# ตัวอย่างที่ 1: วนซ้ำผ่านรายการของตัวเลข
numbers = [1, 2, 3, 4, 5]
for num in numbers:
print(num)
# ตัวอย่างที่ 2: วนซ้ำผ่าน string
text = "Python"
for letter in text:
print(letter)
# ตัวอย่างที่ 3: วนซ้ำผ่าน range ของตัวเลข
for i in range(5): # range(5) ให้ค่าเป็น 0, 1, 2, 3, 4
print(i)
# ตัวอย่างที่ 4: ใช้ for loop ในการวนซ้ำผ่าน dictionary
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
for key, value in my_dict.items():
print(f"{key}: {value}")
วนซ้ำผ่านรายการของตัวเลข: วนซ้ำผ่าน list ของตัวเลขและพิมพ์แต่ละตัวเลขออกมา
วนซ้ำผ่าน string: วนซ้ำผ่าน string และพิมพ์แต่ละตัวอักษรออกมา
วนซ้ำผ่าน range ของตัวเลข: range() จะสร้างลำดับของตัวเลข ซึ่งในที่นี้เป็น 0 ถึง 4
วนซ้ำผ่าน dictionary: ใช้ items() เพื่อรับ key และ value ในแต่ละรอบของการวนซ้ำ
คำสั่ง for ใน Python เป็นวิธีการที่มีประสิทธิภาพและยืดหยุ่นสำหรับการวนซ้ำผ่านข้อมูลประเภทต่าง ๆ อย่างง่ายดาย
range() เป็นฟังก์ชันใน Python ที่ใช้สร้างลำดับของตัวเลขแบบมีขั้นตอน ซึ่งมักจะใช้ในคำสั่งวนซ้ำ (for) เพื่อกำหนดจำนวนครั้งในการวนซ้ำหรือเพื่อสร้างลำดับตัวเลขที่ต้องการ
range() สามารถใช้งานได้ในสามรูปแบบหลัก:
range(stop)
range(start, stop)
range(start, stop, step)
range(stop):
ฟังก์ชันนี้จะสร้างลำดับตัวเลขจาก 0 ไปจนถึงตัวเลขที่น้อยกว่า stop
for i in range(5):
print(i)
ในที่นี้ range(5) จะสร้างลำดับตัวเลขตั้งแต่ 0 ถึง 4
range(start, stop):
ฟังก์ชันนี้จะสร้างลำดับตัวเลขจาก start ไปจนถึงตัวเลขที่น้อยกว่า stop
for i in range(2, 7):
print(i)
ในที่นี้ range(2, 7) จะสร้างลำดับตัวเลขตั้งแต่ 2 ถึง 6
range(start, stop, step):
ฟังก์ชันนี้จะสร้างลำดับตัวเลขจาก start ไปจนถึงตัวเลขที่น้อยกว่า stop โดยเพิ่มค่าทีละ step
for i in range(1, 10, 2):
print(i)
ในที่นี้ range(1, 10, 2) จะสร้างลำดับตัวเลขตั้งแต่ 1 ถึง 9 โดยเพิ่มทีละ 2
ไม่สร้างลำดับทั้งหมดในครั้งเดียว: range() จะไม่สร้างลำดับทั้งหมดในหน่วยความจำ แต่จะสร้างค่าใหม่เมื่อจำเป็น (ลักษณะคล้ายกับการทำงานของ generator) ทำให้มีประสิทธิภาพและใช้งานหน่วยความจำน้อย
รองรับตัวเลขติดลบ: คุณสามารถใช้ตัวเลขติดลบใน start, stop, หรือ step ได้
for i in range(10, 0, -2):
print(i)
ฟังก์ชัน range() เป็นเครื่องมือที่ทรงพลังสำหรับการสร้างลำดับตัวเลขและใช้ควบคุมการวนซ้ำใน Python
แบบฝึกหัดที่ 1
ข้อ 1 เขียนคำสั่ง for แสดงตัวเลขตามรูป
123456789
123456789
123456789
123456789
ข้อ 2 เขียนคำสั่ง for แสดงตัวเลขตามรูป
1
12
123
1234
12345
123456
1234567
12345678
123456789
ข้อ 3 เขียนคำสั่ง for แสดงสูตรคูณตามรูป
2x1=2
2x2=4
2x3=6
2x4=8
2x5=10
2x6=12
2x7=14
2x8=16
2x9=18
2x10=20
2x11=22
2x12=24