我试图设置一个条件,该条件只允许在初始化新类实例时使用大于0的整数值。其他任何东西都会返回错误。
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
圆圈1应该是正确的,但失败的情况下,我是否做了不正确的事情,允许整数值和大于0的整数值用于半径时创建一个新的圆类?
发布于 2022-03-20 03:51:34
type(arg)
返回类型,而不是类型的字符串。
而不是type(radius) == 'int'
,您应该使用type(radius) == int
https://stackoverflow.com/questions/71543678
复制相似问题