если/elif вопрос, он работает, но ответ неправильный

#python-3.x

Вопрос:

 age = 20

if age < 2:
    
    print('the person is a baby')

elif age >= 2:
    
    print('toddler')

elif age >= 4:
    
    print('kid')

elif age >= 13:

    print('teenager')

elif age >= 20:
    
    print('adult')

elif age >= 65:
    
    print('elder')
 

это работает, но когда возраст больше 2 лет, ответ всегда малыш. Я не знаю, что случилось.

Комментарии:

1. Все, что больше 4, 13 или 20, также больше 2, поэтому все это входит в первое elif . Вместо этого вам нужно проверить диапазоны, например, возраст >=2 и возраст >< 4-малыш, возраст >= 4 и возраст < 4-малыш, возраст >

Ответ №1:

Да, это очевидно

Если одно из ваших elif утверждений было выполнено, то все остальные elif или else будут проигнорированы

Вы можете указать условие сохранения с elif помощью условия

пример::

 if age < 2:
   print('the person is a baby')

elif age >= 2 and age < 4:
   print('toddler')

elif age >= 4 and age < 13:
   print('kid')

else:
   print('Out')
 

Аналогичным образом вы можете ограничить условия.

Комментарии:

1. Это нормально сказать: elif 2 <= возраст: