为 class 函数中的参数设置条件
Setting conditions for a parameter in a class function
我正在尝试设置一个条件,在初始化新的 class 实例时只允许使用大于 0 的整数值。其他任何东西都会 return 出错。
class Circle:
def __init__(self, radius):
if type(radius) == 'int' and radius > 0:
self.radius = radius
else:
print("Incorrect value for radius")
circle1 = Circle(2) #output: Incorrect value for radius
circle2 = Circle(-3) #output: Incorrect value for radius
circle3 = Circle('a') #output: Incorrect value for radius
Circle 1 应该是正确的但是失败了,是不是我做错了什么允许在创建新圆时将整数值和大于 0 的整数值用于半径 class ?
type(arg)
returns 类型而不是字符串类型。
您应该使用 type(radius) == int
而不是 type(radius) == 'int'
我正在尝试设置一个条件,在初始化新的 class 实例时只允许使用大于 0 的整数值。其他任何东西都会 return 出错。
class Circle:
def __init__(self, radius):
if type(radius) == 'int' and radius > 0:
self.radius = radius
else:
print("Incorrect value for radius")
circle1 = Circle(2) #output: Incorrect value for radius
circle2 = Circle(-3) #output: Incorrect value for radius
circle3 = Circle('a') #output: Incorrect value for radius
Circle 1 应该是正确的但是失败了,是不是我做错了什么允许在创建新圆时将整数值和大于 0 的整数值用于半径 class ?
type(arg)
returns 类型而不是字符串类型。
您应该使用 type(radius) == int
type(radius) == 'int'