我有一些代码可以让某人输入两个数字,然后分配给变量。然后它会比较给出的数字。 Fx. if a < b elif a > b
。
这工作正常,直到两个数字具有不同的数字位。
Fx. a=12
和b=111
。它将111读为11并认为12更高。我该如何解决这个问题?
答案 0 :(得分:1)
你有字符串,而不是整数。由于同样的原因,字符串'111'
出现在'12'
之前&#34; aaa&#34;会来之前&#34; ab&#34;在字典中,如果那些是文字;字符串是有序的lexicographically。
使用int(your_string)
进行整理。
答案 1 :(得分:0)
我只能猜测这是解决方案(包括[mcve]会有所帮助):
a = int(input())
b = int(input())
if a < b:
#code here
这是因为&#34;输入()&#34;返回&#34; str&#34;在python 3.x中(这是我认为你正在使用的)。在此处阅读更多相关信息:https://docs.python.org/3/library/functions.html#input