以下是我的代码:
class MyClass:
"This is my second class"
a=["1224","2334","3445"]
b=int(input("Enter the PIN number"))
entries={1224:"X",2334:"Y",3445:"Z"}
def check(self,int):
che=False
for c in range(0,3):
if (m.b==int(m.a[c])):
che=True
break
else:
che=False
print(che)
def func(int):
print('Hello',entries[b])
m=MyClass()
m.check(m.b)
每当我尝试从方法内部将String转换为整数时,我得到TypeError:
Enter the PIN number1224
Traceback (most recent call last):
File "MyClass.py", line 18, in <module>
m.check(m.b)
File "MyClass.py", line 9, in check
if (m.b==int(m.a[c])):
TypeError: 'int' object is not callable
答案 0 :(得分:1)
夫妻俩。
self.a
和self.b
,因为这意味着该类可以被命名为任何内容,而目前如果您的类没有被命名为m,则会导致问题/ LI>
醇>
编辑:同样在你的for
循环中,在第一个if
语句中添加一个中断后将che
设置为true,否则它将继续运行for循环并可能设置{{ 1}}使其成为真后回到假