ตัวดำเนินการ ternary ของ Python ช่วยให้คุณประเมินว่าเงื่อนไขเป็นจริงหรือเท็จ ternary operator ใช้โค้ด 1 บรรทัด ซึ่งหมายความว่าสั้นกว่าและกระชับกว่าคำสั่ง if...else แบบเต็ม
คำสั่งแบบมีเงื่อนไข เช่น if statement ช่วยให้คุณควบคุมการไหลของโปรแกรมได้ รหัสภายในคำสั่งแบบมีเงื่อนไขจะทำงานก็ต่อเมื่อเป็นไปตามเงื่อนไขเฉพาะ (หรือชุดของเงื่อนไข)
ใน Python วิธีที่ใช้กันทั่วไปในการเขียนคำสั่งแบบมีเงื่อนไขคือการใช้ if . อย่างไรก็ตาม ภาษายังมีวิธีทดสอบเงื่อนไขในบรรทัดเดียว:ตัวดำเนินการ ternary
บทช่วยสอนนี้จะกล่าวถึง โดยอ้างอิงกับตัวอย่าง พื้นฐานของข้อความแจ้งเงื่อนไข และวิธีใช้ Python ternary operator
เงื่อนไข Python
เมื่อคุณกำลังเขียนโปรแกรม คุณอาจต้องการเฉพาะบรรทัดหรือบล็อกของโค้ดที่จะดำเนินการเมื่อตรงตามเงื่อนไข นี่คือจุดที่ประโยคเงื่อนไขมีประโยชน์
คำสั่ง Python if ใช้เพื่อตรวจสอบว่าตรงตามเงื่อนไขหรือไม่
สมมติว่าเรากำลังสร้างแอปที่ตรวจสอบว่าลูกค้ามีสิทธิ์ได้รับส่วนลด 10% ที่โรงภาพยนตร์หรือไม่ หากลูกค้าอายุ 65 ปีขึ้นไป ควรได้รับส่วนลด มิฉะนั้น ไม่ควรให้ส่วนลด เราสามารถสร้างโปรแกรมนี้ได้โดยใช้คำสั่ง if…else
แต่ถ้าคำสั่งใช้โค้ดอย่างน้อยสองบรรทัด มีวิธีที่กระชับกว่าในการเขียนคำสั่ง if หากคุณประเมินเพียงไม่กี่เงื่อนไข:ตัวดำเนินการ ternary ใน Python
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
Python Ternary Operator
ternary Operator เป็นประเภทของนิพจน์เงื่อนไขใน Python ที่ประเมินคำสั่ง ตัวดำเนินการ ternary ดำเนินการตามว่าคำสั่งนั้นเป็นจริงหรือเท็จ มีความกระชับมากกว่าประโยค if…else แบบดั้งเดิม
ไวยากรณ์สำหรับคำสั่ง ternary ของ Python มีดังต่อไปนี้:
[if_true] if [expression] else [if_false]
ternary conditional operator ใน Python ได้ชื่อมาจากข้อเท็จจริงที่มันใช้พารามิเตอร์สามตัว:if_true, expression และ if_false
ตัวดำเนินการแบบสามส่วนมักใช้เพื่อกำหนดค่าของตัวแปร ตัวแปรรับค่าของ “if_true” หากคำสั่งประเมินเป็น True หรือ “if_false” หากคำสั่งประเมินเป็นเท็จ
วิธีหนึ่งในการคิดถึงโอเปอเรเตอร์ ternary คือสิ่งที่ Python list เข้าใจคือการกรองรายการ หรือคุณอาจนึกถึงฟังก์ชันแลมบ์ดาเพื่อกำหนดฟังก์ชัน
ทั้งการทำความเข้าใจรายการและฟังก์ชันแลมบ์ดาเป็นวิธีที่มีประสิทธิภาพมากกว่าในการดำเนินการ (การกรองรายการและการกำหนดฟังก์ชันตามลำดับ) นี่เหมือนกับวิธีที่ตัวดำเนินการ ternary เป็นวิธีที่มีประสิทธิภาพมากขึ้นในการเขียนคำสั่ง if
แต่เช่นเดียวกับโอเปอเรเตอร์ ternary ควรใช้เพื่อปรับปรุงความสามารถในการอ่านโค้ดของคุณเท่านั้น คุณไม่ควรลงน้ำด้วยโอเปอเรเตอร์ ternary ไม่เช่นนั้นโค้ดของคุณอาจอ่านยากขึ้น
ตัวอย่าง Python Operator แบบสามส่วน
สมมติว่าเราต้องการให้ส่วนลดแก่ลูกค้าที่โรงภาพยนตร์ของเราหากพวกเขามีอายุ 65 ปีขึ้นไป หากลูกค้าอายุไม่เกิน 65 ปี จะไม่มีสิทธิได้รับส่วนลด เราสามารถตรวจสอบว่าลูกค้ามีสิทธิ์รับส่วนลดโดยใช้รหัสต่อไปนี้หรือไม่:
age = 48 discount = True if age >= 65 else False print(discount)
รหัสของเราส่งคืน:False .
ในบรรทัดแรก เราประกาศตัวแปร Python ชื่อ age . ตัวแปรนี้มีค่า 48 ต่อไป เราใช้ตัวดำเนินการ ternary เพื่อคำนวณว่าลูกค้ามีสิทธิ์ได้รับส่วนลดหรือไม่
โอเปอเรเตอร์ ternary ของเราประเมินนิพจน์ age>=65 เนื่องจาก age เท่ากับ 48 ซึ่งถือเป็นเท็จ ดังนั้น รหัสที่ปรากฏหลัง else คำสั่งถูกดำเนินการ
จากนั้น เราพิมพ์ผลลัพธ์ของโอเปอเรเตอร์ ternary ของเราไปที่คอนโซล ส่งคืนค่าเป็นเท็จ
หากเราเปรียบเทียบตัวอย่างนี้กับตัวอย่างสุดท้าย คุณจะเห็นว่าตัวอย่างนี้ใช้โค้ดน้อยลงอย่างเห็นได้ชัด โปรแกรมแรกของเราใช้รหัสห้าบรรทัด และโปรแกรมนี้ใช้สามบรรทัด
ในตัวดำเนินการ ternary ของเราส่งคืนค่า Python boolean (จริงหรือเท็จ) อย่างไรก็ตาม เราสามารถอนุญาตให้โอเปอเรเตอร์ ternary ของเราคืนค่าใดๆ ก็ได้
Ternary Python พร้อมค่าตัวเลข
สมมติว่าเราต้องการตั้งค่าอัตราคิดลดเฉพาะโดยขึ้นอยู่กับว่าผู้ใช้มีสิทธิ์ได้รับส่วนลดหรือไม่ โดยค่าเริ่มต้น โรงภาพยนตร์ของเราจะมอบส่วนลด 5% ให้กับลูกค้าทุกคน แต่ผู้สูงอายุ (ผู้ที่มีอายุ 65 ขึ้นไป) มีสิทธิ์ได้รับส่วนลด 10%
โปรแกรมต่อไปนี้ช่วยให้เราสามารถตรวจสอบว่าลูกค้ามีสิทธิ์ได้รับส่วนลดอาวุโสหรือไม่ หากลูกค้าไม่มีสิทธิ์ได้รับส่วนลดอาวุโส จะได้รับส่วนลด 5%:
age = 22 discount = 5 if age < 65 else 10 print(discount)
รหัสของเราส่งคืน:5. ในรหัสของเรา เรากำหนดค่า 22 ให้กับตัวแปร อายุ .
เราใช้ ternary operator เพื่อตรวจสอบว่าค่าของ age ตัวแปรน้อยกว่า 65 เนื่องจากลูกค้าของเราอายุ 22 คำสั่ง อายุ <65 ประเมินเป็น True ซึ่งหมายความว่าลูกค้าจะได้รับอัตราคิดลด 5% หากลูกค้าของเราอายุ 65 ปีขึ้นไป พวกเขาจะได้รับส่วนลด 10%
จากนั้นเราพิมพ์มูลค่าของ ส่วนลด ตัวแปรไปยังคอนโซล
บทสรุป
ตัวดำเนินการ ternary ของ Python เป็นวิธีที่มีประสิทธิภาพมากขึ้นในการทำ if งบ. ตัวดำเนินการ ternary ประเมินเงื่อนไข จากนั้นคืนค่าเฉพาะโดยขึ้นอยู่กับว่าเงื่อนไขนั้นเท่ากับ True หรือ False
ในตัวอย่างด้านบน เราสามารถเรียกใช้ if คำสั่งในบรรทัดเดียว กระชับกว่าหลายบรรทัดที่ใช้โดยทั่วไปเพื่อสร้าง if คำสั่ง
อย่างไรก็ตาม ตัวดำเนินการ ternary จะใช้ไม่ได้เสมอไป หากคุณต้องการทดสอบนิพจน์หลายนิพจน์ คุณควรเขียน if . แบบเต็ม คำแถลง. เพื่อให้แน่ใจว่าโค้ดของคุณสามารถอ่านได้และเข้าใจง่าย
บทช่วยสอนนี้กล่าวถึงโดยอ้างอิงถึงตัวอย่าง พื้นฐานของโอเปอเรเตอร์ ternary ของ Python และวิธีการทำงาน ตอนนี้คุณมีความรู้ที่จำเป็นในการใช้โอเปอเรเตอร์นี้เหมือน Python pro!
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการเขียนโค้ดใน Python โปรดอ่านคู่มือฉบับสมบูรณ์เกี่ยวกับวิธีเรียนรู้ Python