Привет! Судя по скриншоту, вы пытаетесь запустить функцию на Python для подсчёта чисел с уникальными цифрами в заданном диапазоне.
Ошибка, на которую вы указали (NameError: name 'number' is not defined), говорит о том, что в теле цикла for используется переменная number, которая не была определена. В Python цикл for обычно использует переменные, которые объявляются прямо в заголовке цикла (например, for number in range(start, end + 1):.
Для исправления ошибки вам нужно использовать переменную, объявленную в заголовке цикла, в данном случае это i, и заменить number на i внутри цикла. Вот как это исправить:
def unique_digit_numbers(start, end):
a = 0
for i in range(start, end + 1): # Заменяем `number` на `i`, так как `i` является переменной цикла
str_number = str(i) # Используем `i` для преобразования числа в строку
if len(set(str_number)) == len(str_number): # Если все цифры уникальны
a += 1
return a
result = unique_digit_numbers(100, 999) # Диапазон от 100 до 999, если вы хотели включить и 99, то стартовое значение должно быть 100
print(result)
Теперь функция берёт каждое число i в заданном диапазоне, превращает его в строку (str_number), проверяет, не повторяются ли цифры в этой строке (с помощью преобразования строки в множество set), и если цифры уникальны, то увелич
