我試圖設定一個條件,只允許在初始化新類實體時使用大于 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 的整數值用于半徑?
uj5u.com熱心網友回復:
type(arg)回傳型別而不是型別的字串。
而不是type(radius) == 'int'你應該使用type(radius) == int
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/446026.html
標籤:python-3.x 班级 for循环
上一篇:TypeError:在呼叫super.__init__()時缺少1個必需的位置引數
下一篇:jQuery獲取資料到一個div
