Вывод словаря по значению input

Допустим есть два словаря: a и b. Как сделать, чтобы при вводе в input, допустим b, выводился словарь b?


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

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

Если вы не боитесь, что пользователь введёт что-то не то, есть такой код:

eval(f'print({input()})')

Ну а если боитесь, вот этот:

try:
    eval(f'print({input()})')
except:
    print('Вы ввели что-то не то!')

Ну или можно так, как сказал @GrAnd

→ Ссылка
Автор решения: Zhihar

можно сделать в лоб:

dict_name = input('введите название словаря: ')

a = {} # словарь 1
b = {} # словарь 2

dicts = {'a': a, 'b': b}

if dict_name not in dicts:
    print('нет словаря с таким именем')
else:
    print(dicts[dict_name])

можно конечно сделать и напрямую - что будет в пространстве имен найден нужны объект, но это небезопасно, ведь так любые данные в вашей программе получить можно

→ Ссылка