Ошибка в программе Python

Нашёл программу, с условием " Ввести натуральное число и определить, верно ли, что в его записи есть две одинаковые цифры (не обязательно стоящие рядом)".
Пример:

Введите натуральное число:
12342
Да.

Пример:

Введите натуральное число:
12345
Нет.

Но выдаётся ошибка, помогите исправить, пожалуйста!

from __future__ import print_function
A = int(input("a = "))
a1 = a % 10
a = a // 10
k = 0
while a>0:
  a2 = a % 10
  if a1==a2: k+=1;
  a = a // 10
  a1 = a2
if k>0: print("Да")
else: print("Нет")

Ошибка:

Traceback (mest recent call last):
  File "C:/Users/Win10Pro/Desktop/ПР 45.py", line 3, in <module>
    a1 = a % 10
NameError: name 'a' is not defined

Ответы (4 шт):

Автор решения: RN2208

строчки 3 и 4. Нужно вычислять от A.

a1 = A % 10
a = A // 10
→ Ссылка
Автор решения: XijPRX

Для питона переменные A и a совсем разные, то есть питон чувствителен к регистру. Просто напишите вместо A = int(... - a = int(...

→ Ссылка
Автор решения: Евгений

Вашу задачу можно решить проще:

>>> def has_doubbles(n: int) -> bool:
...   return len(set(str(n))) != len(str(n))
...
>>> has_doubbles(123456)
False
>>> has_doubbles(123454)
True

Если в числе есть повторения, то множество цифр этой строки будет иметь меньшую размерность, чем длина строкового представления этого числа

→ Ссылка
Автор решения: xnd

поставь a = a // 10 выше a1 = a % 10

→ Ссылка