Python 检查变量是否为10的倍数

Python 检查变量是否为10的倍数,python,Python,我需要我的程序检查一个输入变量e_gtin,然后用它乘以1,3,5和第7个数乘以3,然后把7个数相加,除以最近的10倍表,到目前为止,它乘以这些数并相加,但我不知道从哪里开始,把它变成10的倍数 此外,我最终使用了这个代码 calculator = int(e_gtin[0])*3+int(e_gtin[1])+\ int(e_gtin[2])*3+int(e_gtin[3])+\ int(e_gtin[4])*3+int(e_gtin[5])+\

我需要我的程序检查一个输入变量e_gtin,然后用它乘以1,3,5和第7个数乘以3,然后把7个数相加,除以最近的10倍表,到目前为止,它乘以这些数并相加,但我不知道从哪里开始,把它变成10的倍数

此外,我最终使用了这个代码

calculator = int(e_gtin[0])*3+int(e_gtin[1])+\
         int(e_gtin[2])*3+int(e_gtin[3])+\
         int(e_gtin[4])*3+int(e_gtin[5])+\
         int(e_gtin[6])*3   

rounding = round(calculator+4)
加4表示变量将始终向上取整,而不是向下取整GTIN计算指定了这一点

e_gtin是一个输入的7位gtin代码

谢谢转到-->

您大概是在询问如何计算GTIN8号码上的校验位。这里给出了一个解释

要理解模运算符的工作原理,只需使用它,为自己制作一张表格等

import numpy as np
sums=np.array([50,51,52,53,54,55,56,57,58,59,60,61])
print sums
print sums % 10
print 10 - sums % 10  # all results right except for 10s which should be zeros
print 10 - (sums-1) % 10   -1 
输出:

[50 51 52 53 54 55 56 57 58 59 60 61]
[0 1 2 3 4 5 6 7 8 9 0 1]
[10  9  8  7  6  5  4  3  2  1 10  9]
[0 9 8 7 6 5 4 3 2 1 0 9]

您正在寻找%运算符。您可以将它与除法运算符/结合使用,以确定除法运算的剩余部分,使用该信息,您应该能够找到最接近的10的倍数。要将数字舍入到最接近的10,只需使用roundnumber,-1谢谢,我完全忘记了舍入模块:dahhh,好的!谢谢,这帮了大忙
[50 51 52 53 54 55 56 57 58 59 60 61]
[0 1 2 3 4 5 6 7 8 9 0 1]
[10  9  8  7  6  5  4  3  2  1 10  9]
[0 9 8 7 6 5 4 3 2 1 0 9]