Я все еще новичок в Python и проверяю следующий код, написанный не мной.
Может кто-нибудь объяснить, как можно вызвать первый экземпляр переменной "clean" в функции check_arguments? Мне кажется, что он вызывает еще неопределенную переменную. Код работает, но не должен ли этот вызов "clean" вызвать ошибку?
Чтобы прояснить, бит, на который я ссылаюсь, таков.
def check_arguments(ages):
clean, ages_list = parse_ages_argument(ages)
Полный код выглядит следующим образом ...
def check_arguments(ages):
clean, ages_list = parse_ages_argument(ages)
if clean != True:
print('invalid ages: %s') % ages
return ages_list
def parse_ages_argument(ages):
clean = True
ages_list = []
ages_string_list = ages.split(',')
for age_string in ages_string_list:
if age_string.isdigit() != True:
clean = False
break
for age_string in ages_string_list:
try:
ages_list.append(int(age_string))
except ValueError:
clean = False
break
ages_list.sort(reverse=True)
return clean, ages_list
ages_list = check_arguments('1,2,3')
print(ages_list)