การจัดการข้อผิดพลาดด้วยการ raise
อีกวิธีหนึ่งในการเรียกข้อผิดพลาดคือการใช้ raise ในแบบฝึกหัดนี้ คุณจะเพิ่มคำสั่ง raise เข้าไปในฟังก์ชัน shout_echo() ที่กำหนดไว้ก่อนหน้า เพื่อแสดงข้อความแสดงข้อผิดพลาดเมื่อค่าที่ส่งให้อาร์กิวเมนต์ echo มีค่าน้อยกว่า 0
การเรียกใช้ shout_echo() ในโค้ดตัวอย่างใช้ค่าอาร์กิวเมนต์ที่ถูกต้อง หากต้องการทดสอบดูว่าคำสั่ง raise ทำงานอย่างไร ให้ลองเปลี่ยนค่าของอาร์กิวเมนต์ echo เป็นค่า ติดลบ แล้วอย่าลืมเปลี่ยนกลับเป็นค่าที่ถูกต้องก่อนไปยังแบบฝึกหัดถัดไป
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python เบื้องต้น: การเขียนฟังก์ชัน
คำแนะนำการฝึกหัด
- เติมคำสั่ง
ifให้สมบูรณ์ โดยตรวจสอบว่าค่าของechoน้อยกว่า 0 หรือไม่ - ในส่วนของคำสั่ง
ifให้เพิ่มคำสั่งraiseที่เรียกValueErrorพร้อมข้อความว่า'echo must be greater than or equal to 0'เมื่อค่าที่ส่งให้echoมีค่าน้อยกว่า 0
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define shout_echo
def shout_echo(word1, echo=1):
"""Concatenate echo copies of word1 and three
exclamation marks at the end of the string."""
# Raise an error with raise
if ____:
____ ____(____)
# Concatenate echo copies of word1 using *: echo_word
echo_word = word1 * echo
# Concatenate '!!!' to echo_word: shout_word
shout_word = echo_word + '!!!'
# Return shout_word
return shout_word
# Call shout_echo
shout_echo("particle", echo=5)