@isawasaw

Как написать функцию со списком python?

def describe_pet(animal_type, pet_name):
vowels=['a','e','i','o','u','y']
for vowel in vowels:
if animal_type[0]==vowel:
print(f"\nI have an {animal_type}")
else:
print(f"\nI have a {animal_type}")
print(f"My {animal_type}'s name is {pet_name.title()}")
describe_pet('eagle', 'oleg ')
есть код, но не могу понять как сделать так, чтобы код при виде того, что тип животного начинается с гласной писал перед этим не "A" , а "AN".
  • Вопрос задан
  • 142 просмотра
Решения вопроса 1
@dima20155
you don't choose c++. It chooses you
isawasaw,
def describe_pet(animal_type, pet_name):
    vowels=['a','e','i','o','u','y']
    if animal_type[0] in vowels:
        outputStr = f'\nI have AN {animal_type}'
    else:
        outputStr = f'\nI have A {animal_type}'
    print(outputStr)
    print(f"My {animal_type}'s name is {pet_name.title()}")

describe_pet('eagle', 'oleg ')
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Vindicar
@Vindicar
RTFM!
У тебя ошибка в логике.
Ты проверяешь каждую возможную гласную, и если слово начинается с неё, ты выводишь "an".
Но если слово НЕ начинается с этой гласной, ты выводишь "a", что ошибочно.
Ведь тот факт, что слово не начинается с этой гласной, ещё не означает, что оно не начинается вообще с никакой гласной.
Поэтому раздели две операции - проверка гласной, и вывод.
Ну или научись пользоваться оператором in, как выше подсказал Dmitrii.
Ответ написан
Комментировать
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
- print(f"\nI have a {animal_type}")
+ print(f"\nI have AN {animal_type}")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы