[英]“invalid literal for int()” parsing a string with space-separated numbers
我正在为在线课程编写的程序是确定整数列表是否为正,然后检查它们是否是回文。 如果所有条件都为真,则应该打印True,如果所有条件都为假,则应该打印false。
我已经尝试过使用列表推导来避免使用map函数,但是它仍然给了我同样的错误,因此我决定改回使用map。
_ = input()
number = list(map(int, input()))
if all(number) > 0:
all(number == number[::-1] for i in number)
else:
print("False")
我预期为False
因为我输入的自定义输入为:3 8 -12 25但相反,一直收到错误消息:ValueError:int的无效文字,它指出的那一行是第2行
修正:
all
请让我知道这是否适合您:
_ = input()
numbers = list(map(int, input().split()))
if all(n > 0 for n in numbers) and numbers == numbers[::-1]:
print("True")
else:
print("False")
您必须拆分字符串才能从中获取列表:
number = list(map(int, input().split(" ")))
map()一次接受输入字符串1个字符-因此,当它遇到空格('')-无法转换时,请尝试
number = list(map(int,input().split()))
代替:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.