Python 如何比较两个数字之间的差异?

Python 如何比较两个数字之间的差异?,python,python-3.x,Python,Python 3.x,例如,我有两个数字:4532和5489。我想计算4532的第一个数字4和5489的所有数字4-5、4-4、4-8和4-9之间的最小差值。我该怎么做 num = "4532" num2 = "5489" for j in num2: if int(i)-int(j)<int(i)-int(j+1): print(int(i)-int(j)) #I am getting list index out of bound exception num=“4532” num2

例如,我有两个数字:4532和5489。我想计算4532的第一个数字4和5489的所有数字4-5、4-4、4-8和4-9之间的最小差值。我该怎么做

num = "4532"
num2 = "5489"
for j in num2:
    if int(i)-int(j)<int(i)-int(j+1):
        print(int(i)-int(j)) #I am getting list index out of bound exception
num=“4532”
num2=“5489”
对于单位为num2的j:

如果int(i)-int(j)这不是一个好代码,但它可以工作。您可以根据需要进行调整。
请记住,如果您有两个数字具有相同的结果,您将不会知道(在这种情况下,您将留下第一个匹配的数字)

在这个例子中,你会得到一个数字,这个数字会给你带来最小的差异。您可以将其更改为保存结果

num1 = 4532
num2 = 5489
ln2 = len(str(num2))
firstDigit = int(str(num1)[0])
lowest = None
temp = num2

for i in range(ln2):
    last = temp % 10
    temp //= 10
    diff = abs(firstDigit - last)

    if lowest is None or diff < abs(lowest - firstDigit):
        lowest = last

print(lowest)
num1=4532
num2=5489
ln2=len(str(num2))
第一位数=int(str(num1)[0])
最低=无
温度=num2
对于范围内的i(ln2):
最后一次=温度%10
温度//=10
差异=绝对值(第一位-最后一位)
如果最低值为无或差值<绝对值(最低-第一位数字):
最低=最后
打印(最低)

那么预期的输出是什么<对于
4-4
,code>0
?因此不是代码编写服务。到目前为止,您尝试了什么?当您只想计算num的第一个数字和num2中的数字之间的差值时,为什么要迭代num?这个问题还不清楚。另外,你想计算最小绝对差,还是说-10应该小于2?