สำคัญ: ในภาษาไพทอนจะไม่มีเครื่องหมาย { } เพื่อใช้ครอบ คำสั่งเช่นคำสั่งของ if else, loop จะใช้การ Tab (เเท๊บ) 1 ครั้ง ภายใต้คำสั่งนั้นๆ
If else (อีฟ เอล)
If else (อีฟ เอล) คือการเลือกทำแบบมีเงื่อนไขตามหลักของ ตรรกะ, ค่าการเปรียบเทียบ, จริงเท็จ
สามารถดูเพิ่มเติมได้ >>ที่นี่<< ในหัวข้อ "ตัวดำเนินการเปรียบเทียบ" และ "ตัวดำเนินการทางตรรกะ"
ตัวอย่างการ if โดยมีโครงสร้างภาษาดังนี้
โค้ด: เลือกทั้งหมด
if เงื่อนไข: #เงื่อนไขที่หนึ่ง
คำสั่งภายใต้เงื่อนไขที่หนึ่ง
if เงื่อนไข: #เงื่อนไขภายใต้เงื่อนไขที่หนึ่ง
คำสั่งภายใต้เงื่อนไขที่สอง #จะต้องทำการแท๊บจากเงื่อนไขที่สอง 1 ครั้ง
else:
คำสั่งภายใต้เงื่อนไข else #เมื่อไม่เข้าเงื่อนไขที่หนึ่งจะมาทำเงื่อนไข else
โค้ด: เลือกทั้งหมด
budget = 100
price = 200
if budget >= price: #ใช้การเปรียบเทียบมากกว่า
print "คุณสามารถซื้อสินค้าได้" #คำสั่งภายใต้เงื่อนไข if
else: #เมื่อไม่เข้าเงื่อนไข if
print "เงินคุณไม่พอซื้อสินค้า" #คำสั่งภายใต้เงื่อนไข else
หมายเหตุ: การ if ไม่จำเป็นต้องมี else ก็ได้เงินคุณไม่พอซื้อสินค้า
ถ้าหากมีเงื่อนไขมากกว่าหนึ่งเงื่อนไข จะต้องมีการใช้ else if โดยมีโครงสร้างภาษาดังนี้
โค้ด: เลือกทั้งหมด
if เงื่อนไข:
คำสั่งภายใต้เงื่อนไข
elif เงื่อนไข:
คำสั่งภายใต้เงื่อนไข
else:
คำสั่งภายใต้เงื่อนไข
ตัวอย่างที่ 1
โค้ด: เลือกทั้งหมด
score = 91
if score > 60:
print "คุณสอบผ่าน"
elif score > 60:
print "คุณเก่งมาก"
else:
print "คุณสอบตก"
อธิบาย: ในการตรวจสอบเงื่อนไข เมื่อเข้าเงื่อนไขใดๆก่อนจะสิ้นสุดชุดเงื่อนไขนั้นๆคุณสอบผ่าน
ตัวอย่างที่ 2 การทำ if else อย่างถูกต้อง
โค้ด: เลือกทั้งหมด
score = 91
if score > 90:
print "คุณเก่งมาก"
elif score > 60:
print "คุณสอบผ่าน"
else:
print "คุณสอบตก"
Loop (ลูป)คุณเก่งมาก
การ loop (ลูป) เป็นการวนซํ้าจนกว่าจะเป็นการสิ้นสุดเงื่อนไขการวนซํ้า
while เป็นหนึ่งในคำสั่งการวนซํ้าประเภทนึงในภาษาไพทอน โดยจะทำการคิดเงื่อนไขก่อนวนซํ้า หากเงื่อนไขเป็น เท็จ จะเป็นการสิ้นสุดคำสั่ง การกำหนดเงื่อนไขใน while สามารถใช้หลักการของ if else มากำหนดเงื่อนไขได้
ตัวอย่าง
โค้ด: เลือกทั้งหมด
count = 1
while count <= 5:
print "จำนวนที่ ", count
count = count + 1 #เพิ่มค่าตัวแปร +1 ในกับตัวแปร count ทุกๆ การวนซํา
print "สิ้นสุด while" #เมื่อสิ้นสุดการวนรอบของ while จำทำการแสดงข้อความ
หมายเหตุ: เมื่อเงื่อนไขมีค่าเป็นจริงอยู่ตลอดจะเป็นการ infinity loop (การวนซํ้าแบบไม่สิ้นสุด) เช่นจำนวนที่ 1
จำนวนที่ 2
จำนวนที่ 3
จำนวนที่ 4
จำนวนที่ 5
สิ้นสุด while
โค้ด: เลือกทั้งหมด
num = 1
while num == 1:
print "infinity loop"
โค้ด: เลือกทั้งหมด
while True:
print "infinity loop"
โค้ด: เลือกทั้งหมด
n1 = 1
while n1 <= 20:
if(n1%2) == 0: #ใช้การ mod เพื่อหาเลขคู่
print n1,"เป็นเลขคู่"
else:
print n1,"เป็นเลขคี่"
n1 = n1+1
for loop เป็นการวนซํ้าโดยใช้ค่าอื่น หากวนจนครบค่าที่กำหนดไว้แล้วจะสิ้นสุดการวนซํ้า เช่น ตัวแปรประเภทลิส หาก หากวนซํ้าจนครบแล้วจะสิ้นสุดการวนซํ้า1 เป็นเลขคี่
2 เป็นเลขคู่
3 เป็นเลขคี่
4 เป็นเลขคู่
5 เป็นเลขคี่
6 เป็นเลขคู่
7 เป็นเลขคี่
8 เป็นเลขคู่
9 เป็นเลขคี่
10 เป็นเลขคู่
ตัวอย่าง
โค้ด: เลือกทั้งหมด
band = ['apple','samsung','asus','google']
for index in range(len(band)): #ใช้คำสั่ง len() เพื่อนหาจำนวนของ band ใช้ range เพื่อใช้ค่าจาก len ทำตำแน่งของ index
print "Band is: ",band[index]
ตัวอย่างการใช้ for เพื่อทำสูตรคูณBand is: apple
Band is: samsung
Band is: asus
Band is: google
โค้ด: เลือกทั้งหมด
n1 = 3
for n2 in range(1,12):
result = n*i
print str(n1),"x",str(n2),"=",res
Exceptions Handling (แอ็กเซ็ปชั่น แฮลเดลลิ่ง)3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30
3 x 11 = 33
Exceptions Handling (แอ็กเซ็ปชั่น แฮลเดลลิ่ง) เป็นการดักเออเร่อของไพทอน โดยปรกติการเออเร่อจะมีข้อความแจ้งขึ้นมาและทำให้โปรแกรมหยุดทำงาน
ซึ่งถ้าได้ทำการดักเออเร่อไว้ โปรแกรมจะไม่เกิดเออเร่อขึ้นและสามารถทำงานต่อไปได้
ตัวอย่าง โครงสร้าง
โค้ด: เลือกทั้งหมด
try:
#โค้ดคำสั่ง
except ข้อความผิดพลาด1:
#โค้ดคำสั่ง
except ข้อความผิดพลาด2:
#โค้ดคำสั่ง
else: #เมื่อไม่มีข้อผิดพลาด
#โค้ดคำสั่ง
หมายเหตุ: ไม่จำเป็นต้องใส่ else ก็ได้ แต่อย่างน้อยต้องมีหนึ่ง except: เพื่อรองรับข้อความเออเร่อ ไม่เช่นนั้นจะเกิดการเออเร่อ
ใน Exceptions Handling (แอ็กเซ็ปชั่น แฮลเดลลิ่ง) จะใช้อธิบายร่วมกับการรับค่าจากคีย์บอร์ด
โดยใช้คำสั่ง raw_input() โดยจะเก็บข้อมูลการกดคีย์บอร์ดไว้ที่ตัวแปร
ตัวอย่างโครงสร้าง
โค้ด: เลือกทั้งหมด
input = raw_input("ข้อความขณะรอการกดคีย์บอร์ด :")
เมื่อพิมพ์ข้อความเสร็จแล้วกด enter เพื่อสิ้นสุดการรอรับค่าข้อความขณะรอการกดคีย์บอร์ด :
ตัวอย่าง
โค้ด: เลือกทั้งหมด
name = raw_input("คุณชื่ออะไร: ")
print "สวัสดีคุณ ",name
โค้ด: เลือกทั้งหมด
score = raw_input("คะแนนสอบคือ: ")
grade = ""
try:
score = int(score) #แปลงค่าจากที่รับจากคีย์บอร์ดมาเป็นค่า int
if type(score) == int: #ตรวจสอบประเภทของตัวแปรว่าเป็น int หรือไม่
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"
elif score >= 70:
grade = "C"
elif score >= 60:
grade = "D"
else :
grade = "F"
except ValueError: #เมื่อไม่สามารถแปลงค่าเป็น int ได้จะเออเร่อ และมาตกที่ except ValueError
print "ข้อมูลไม่ถูกต้อง"
if(grade != ""):
print "เกรดที่ได้: ",grade
สำหรับ ท่านใดได้อ่านจนจบทั้งสองพาร์ทแล้วสามารถทดลองทำแบบฝึกหัดเพื่อทบทวนความรู้ได้ >>ที่นี่<<