例如,我有两个数字:4532和5489.I想要计算4532的第一个数字(即4)和5489的所有数字之间的最小差异,即4-5,4-4,4-8和4-我怎么办?
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
答案 0 :(得分:0)
这不是一个很好的代码,但它正在运作。您可以根据需要进行调整 请注意,如果您有两个数字具有相同的结果,您将无法知道(在这种情况下,您将留下第一个匹配的数字)
在那个例子中,你得到的数字会给你最小的差异。您可以更改它以保存结果。
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)