我想计算GTIN-8条形码的校验位。以下是我的代码:
def generate():
Valid = False
while not Valid:
# ask the user to enter 7 digits and check that the input is correct.
GTIN = input("Please enter a 7 digit integer")
if len(GTIN) == 7 and GTIN.isdigit():
print("You have entered it correctly")
Valid = True
else:
print("That is not 7 integers. Please enter 7 digits")
times_together = int(GTIN[0])*3+int(GTIN[1])+int(GTIN[2])*3+ \
int(GTIN[3])+int(GTIN[4])*3+int(GTIN[5])+int(GTIN[6])*3
print(times_together)
该函数将输入数字分别乘以3然后为1.例如,如果我输入1324562,它将正确返回值43.我需要程序从10的舍入倍数中减去值(43)值(50)并将结果(7)作为校验位(即13245627)附加到输入数字。
我是一名python初学者,所以我想在简单的代码中执行此操作,而不导入math
和ceil
等包。我希望将计算分配给变量以查看发生的情况。