Как мне оптимизировать код, чтобы постоянно не проверять условие if перед каждым input
def make_album(artist,album_name,soundtrack=None):
album = {artist: album_name}
if soundtrack:
album['soundtracks'] = soundtrack
return album
while True:
artist_input = input("What's your name aritst? ")
if artist_input == 'q':
break
album_input = input("Tell me your album name. ")
if album_input == 'q':
break
track_input = input("How many soundtracks you have? ")
if track_input == 'q':
break
print(make_album(artist_input, album_input, track_input),'\n')
Привет! Я хочу узнать любой способ, который поможет проверять ввод 'q' пользователем, но при этом что бы этот новый способ был более оптимизированный, что бы каждый раз не писать условие 'q' перед каждым input.
Заранее спасибо ребят!
Ответы (1 шт):
Автор решения: Roman-Stop RU aggression in UA
→ Ссылка
Можно вынести в функцию, а выход делать с помощью исключения:
def get_input(prompt):
user_input = input(prompt)
if user_input == 'q':
raise ValueError("User requested to quit.")
return user_input
while True:
try:
artist_input = get_input("What's your name artist? ")
album_input = get_input("Tell me your album name. ")
track_input = get_input("How many soundtracks do you have? ")
print(make_album(artist_input, album_input, track_input), '\n')
except ValueError as e:
break