为什么这个python代码甚至不正确

  • 本文关键字:代码 不正确 python python
  • 更新时间 :
  • 英文 :


我用python写了一个小程序,它必须给出最大数量的2个输入。代码如下:

a = input("insert a")
b = input("insert b")
if a < b:
print(b)
else:
print(a)

问题是,该代码适用于某些数字,但不适用于所有数字。例如,如果我插入a=5和b=10,或者b=5和a=10,它总是会给我5,即使10大于5。我不知道这个问题是来自我的代码,还是Pycharm中的错误,因为我在visual Studi代码中的Pycharm尝试过,它给了我同样的结果,我不明白为什么。如果有人能向我解释这一点,我将非常感谢

问题是由input()返回字符串而非数字引起的,这导致评估按字母顺序而非数字进行比较。您可以像一样将变量强制转换为int

a = int(input("insert a"))
b = int(input("insert b"))
if a < b:
print(b)
else:
print(a)

由于Python 3,input()返回一个字符串,您必须显式地将其转换为int,其中包含int,如以下

x = int(input("Enter a number: "))
y = int(input("Enter a number: "))

对于可以包含小数成分的值,类型将是float而不是int:

x = float(input("Enter a number:"))

最新更新