Я новичок в сообществе и программировании в целом, выбрал python в качестве моего первого языка и закончил пару онлайн-курсов.
Я пытаюсь работать над проектом, чтобы попрактиковаться и продолжать совершенствоваться. Он проверяет номер кредитной карты, проверяет цифры, префикс и контрольную сумму, но я застрял в очень простой концепции.
Я определяю функцию как ввод для пользователя номера кредитной карты enter de, затем я хотел бы вызвать функцию внутри другой, которая проверяет префикс и контрольную сумму, но я продолжаю получать трассировку, как будто моя переменная не определено.
# User inputs the cc number
def inp_cc():
cc_number = input("Insert credit card number: ")
return cc_number
# This will validate the prefix and lenght and print it if its correct,
otherwise will show an error
# Code is not completed as I keep getting the traceback
def val_tc():
inp_cc()
if len(cc_number) == 13 or len(cc_number) == 16:
cc_brand = "Visa"
print("Credit card number: %s" % cc_number,"Credit card brand: %s" % cc_brand)
else:
quit()
# Here I call the val_tc() function that should also call the inp_cc()
val_tc()
Это ошибка, которую я получаю:
Traceback (most recent call last):
File "main.py", line 17, in <module>
val_tc()
File "main.py", line 11, in val_tc
if len(cc_number) == 13 or len(cc_number) == 16:
NameError: name 'cc_number' is not defined
Заранее спасибо!