0
我不斷收到一個類型錯誤:類型builtin_function_or_method」的對象沒有LEN()獲取類型錯誤:類型builtin_function_or_method「的對象沒有LEN()
這是我的代碼:
def CheckLength(num):
if len(num)>=13 and len(num)<=16:
return True
else:
return False
def CheckType(num):
if num[0]=='4':
return 'Visa'
elif num[0]=='5':
return 'MasterCard'
elif num[0]=='6':
return 'Discover'
elif num[0:1]=='37':
return 'American Express'
else:
return 'Invalid Entry'
def Step1(num):
total=0
length=len(num)
for i in range(length-1,-2,-2):
double=int(num[i]*2)
if double>9:
double=double[0]+double[1]
total+=double
else:
total+=double
return total
def Step2(num):
total=0
length=len(num)
for i in range(length-1,-1,-2):
total+=i
return total
def Step3(num):
total=Step1(num)+Step2(num)
if total%10==0:
return True
else:
return False
def main():
inFile=open('pa7.cards','r')
cardNum=inFile.readline().strip()
while cardNum!='99999':
validLength=CheckLength(cardNum)
validType=CheckType(cardNum)
if validLength==True and validType==True:
print(cardNum,"valid")
else:
print(cardNum,"invalid")
cardNum=inFile.readline().strip
inFile.close()
main()
我的數據文件看起來像這樣:
4388576018402626
4388576018410707
37271983
5190828258102121
99999
有誰知道我爲什麼得到這個錯誤?你能看到我遇到的其他明顯問題嗎?
每當您看到該錯誤消息時,請確保您的所有函數調用實際上都有函數調用括號。 – user2357112
或者只是打印出你調用'len()'的變量的值。 – Barmar