我实际上是在尝试将字符转换为整数。 (即' 1'到1)在python3中,但它显示出一些错误
ValueError: invalid literal for int() with base 10: '\r'
为什么它无法转换它。 如果我在geeksforgeeks编译器上运行它没有显示任何错误。 但在提交时它会显示此错误。
t=int(input())
for each in range(t):
s=input()
count=0
num=0
for eachch in str(s):
if (eachch>='a') and (eachch<='z'):
count+=1
else:
num=num*10+int(eachch)
if(int(num) == int(count)):
print("1")
else:
print("0")
告诉我为什么会这样,以及这些编译器之间的区别。
答案 0 :(得分:0)
这里的问题必须是你得到的输入字符串有\r
符号,所以int()
函数不能得到一个整数。使用strip()
功能必须在这里提供帮助。
即。 t = int(input().strip())