当我运行这段代码时,shell会输出错误'无法将'int'对象转换为str隐式'.
我在StackOverflow上尝试了其他修复,但是我无法在代码中解决问题.
import math
while True:
try:
di = input('Input 7 digit number ')
total = (int(di[0])+int(di[2])+int(di[4])+int(di[6]))*3+(int(di[1])+int(di[3])+int(di[5]))
if len(str(di)) != 7:
print('Incorrect')
if len(str(di)) == 7:
print('Okay')
multiplier = [3,1]
times = ''
total = 0
for index, digit in enumerate(list(str(di))):
total = total + int(digit)*multiplier[index%2]
times = times+str(int(digit)*multiplier[index%2])+', '
mof10 = total + (10 - total%10)
checkdigit = mof10 - total
final = str(di) + str(checkdigit)
print(times[:-1])
print(total)
print(mof10)
print(checkdigit)
print(final)
final = (di[1]+di[3]+di[5])+((di[0]+di[2]+di[4]+di[6])*3)
final = (final+4)
Base10=(int(round(final, -1))) …Run Code Online (Sandbox Code Playgroud)