Python Возврат переменной в файл

У меня есть кортежные переменные, которые являются France, Germany. Я пытаюсь дать значение моей функции bring_cities, и если это Франция или Германия, я хочу видеть объекты кортежа Франция и Германия. Есть ли какой-нибудь короткий путь, чтобы не использовать циклы if, как я сделал в приведенном ниже примере?

France = (
    ('Paris', 'Paris'),
    ('Lyon', 'Lyon'),
)
Germany = (
    ('Frankfurt', 'Frankfurt'),
    ('Berlin', 'Berlin'),
)

cities = (('', ''),) + France + Germany

def bring_cities(country): 
    if country == 'France':
        return France
    if country == 'Germany':
        return Germany
    ...

Вы можете создать словарь, чтобы не писать оператор if для каждой страны. Для этого можно использовать следующий код.

France = (
    ('Paris', 'Paris'),
    ('Lyon', 'Lyon'),
)
Germany = (
    ('Frankfurt', 'Frankfurt'),
    ('Berlin', 'Berlin'),
)

dictionary = {"France": France, "Germany": Germany}


def bring_cities(country):
    return dictionary[country]

Чтобы сделать его еще короче, вы можете определить свои Страны внутри словаря.

dictionary = {
              "France": (('Paris', 'Paris'), ('Lyon', 'Lyon')),
              "Germany": (('Frankfurt', 'Frankfurt'), ('Berlin', 'Berlin'),)
              }

Продолжение ответа Герды

France = (
    ('Paris', 'Paris'),
    ('Lyon', 'Lyon'),
)
Germany = (
    ('Frankfurt', 'Frankfurt'),
    ('Berlin', 'Berlin'),
)

dictionary = {"France": France, "Germany": Germany}


def bring_cities(country):
    print(dictionary[country])
    
user_choice = input("Enter a Country (France/Germany) and we will give you Cities in it: ")
bring_cities(user_choice)
Вернуться на верх