Проблема с выводом. Печатает один город/ Python

friends = {
    'Серёга': 'Омск', 
    'Соня': 'Москва', 
    'Дима': 'Челябинск', 
    'Алина': 'Хабаровск', 
    'Егор': 'Пермь'
}

def is_anyone_in(collection, city):
    for friend in collection:
        if collection[friend] == city:
            print('В городе ' + city + ' живёт ' +friend+ '. Едем в гости!')
        else:
            print('В городе ' + city + ' у меня есть друг, но мне туда не надо')
    
is_anyone_in(friends, 'Хабаровск')

Ответы (1 шт):

Автор решения: ПИТОНИСТ версия-3-8

Замените print('В городе ' + city + ' у меня есть друг, но мне туда не надо') на print('В городе ' + collection[friend] + ' у меня есть друг, но мне туда не надо'). Проблема решена, если я Вас правильно понял ;). Вот полный, уже обновлённый код:

friends = {
    'Серёга': 'Омск', 
    'Соня': 'Москва', 
    'Дима': 'Челябинск', 
    'Алина': 'Хабаровск', 
    'Егор': 'Пермь'
}

def is_anyone_in(collection, city):
    for friend in collection:
        if collection[friend] == city: print('В городе ' + city + ' живёт ' +friend+ '. Едем в гости!')
        else: print('В городе ' + collection[friend] + ' у меня есть друг, но мне туда не надо')
    
is_anyone_in(friends, 'Хабаровск')
→ Ссылка