2 значения выводятся
у меня в коде почемуто выводится 2 значения помогите плиз
def replbank():
ISSUER_ID = {
'VISA' : 461259,
'VISA1' : 488984,
'VISA2' : 404267,
'VISA3' : 457802
}
def issuerId(key: str = 'VISA') -> int:
return ISSUER_ID.get(key)
def issuerId1(key: str = 'VISA1') -> int:
return ISSUER_ID.get(key)
def issuerId2(key: str = 'VISA2') -> int:
return ISSUER_ID.get(key)
def issuerId3(key: str = 'VISA3') -> int:
return ISSUER_ID.get(key)
operators = [issuerId(), issuerId1(), issuerId2(), issuerId3()]
choice = random.choice(operators)
def checkLuhn(list_int: list) -> bool:
c_sum = list_int[-1]
tmp_v = {i: v * 2 for i, v in enumerate(list_int[:-1]) if i == 0 or i % 2 == 0}
for k, v in tmp_v.items():
if v >= 10:
y = str(v)[0]
z = str(v)[1]
w = int(y) + int(z)
tmp_v.update({k: w})
for k_, v_ in tmp_v.items():
list_int[k_] = v_
res = sum(list_int[:-1]) * 9
if str(res)[-1] == str(c_sum):
return True
def userId() -> int:
return randint(1111111111, 9999999999)
iid = str(choice)
uid = str(userId())
num = iid + uid
l_tmp = [int(i) for i in num]
while not checkLuhn(l_tmp):
num = str(choice) + str(userId())
l_tmp = [int(i) for i in num]
return num
print(replbank())
Почемуто выводятся два значения Пример:
4889849188334682
4612599486469300