如何正确地拒绝在 Python 构造函数中创建对象?考虑一个对象:
class Triangle:
def __init__(self, a, b, c):
sides = [a, b, c]
sides.sort()
if sides[0]+sides[1] < sides[2]:
return None
self._a = a
self._b = b
self._c = c
如果三角形的边不符合逻辑,我想拒绝创建三角形对象。返回None
不会阻止创建 Triangle 对象,返回False
会引发异常。处理这个问题的正确方法是什么?当给出错误的参数时,我应该抛出某种类型的异常吗?