while True:
x = input().split()
if len(x) != 2:
continue
a, b = x
if a > b:
print(a, 'is greater than', b)
嗨,为什么当我输入:'5 10',输出:'5大于10'?
在python中,从input
返回的所有内容都是字符串,即使您对它们使用split()
,它们仍然是字符串。 '5'
(字符串)大于'10'
(字符串),因为字符串比较首先对第一个字母起作用!
要正确执行,请将它们都转换为int
:
while True:
x = input().split()
if len(x) != 2:
continue
a, b = x
if int(a) > int(b):
print(a, 'is greater than', b)
在字符串比较中,请改为这样做。
x = list(map(int, input().split()))