14
แนวทางปฏิบัติที่ดีที่สุดสำหรับ Python ยืนยัน
มีปัญหาด้านประสิทธิภาพหรือการบำรุงรักษารหัสเมื่อใช้assertเป็นส่วนหนึ่งของรหัสมาตรฐานแทนที่จะใช้เพื่อการดีบักหรือไม่ คือ assert x >= 0, 'x is less than zero' ดีกว่าหรือแย่กว่า if x < 0: raise Exception, 'x is less than zero' นอกจากนี้ยังมีวิธีการตั้งกฎทางธุรกิจเช่นif x < 0 raise errorนั้นที่จะถูกตรวจสอบโดยไม่ต้องทำtry/except/finallyเช่นนั้นตลอดเวลาหากรหัสตลอดเวลาxน้อยกว่า 0 ข้อผิดพลาดจะเพิ่มขึ้นเช่นถ้าคุณตั้งไว้assert x < 0ที่จุดเริ่มต้นของฟังก์ชั่น ที่ไหนxจะกลายเป็น 0 แล้วมีข้อยกเว้นยก