с использованием locals()
, который является диктовкой имен переменных локальной области видимости (в виде строк) в качестве его ключей и их значений в качестве ..... а также его значений!
print(locals()[MysteryCar].Owner)
Другой альтернативой может быть использование eval
, который является методом, который оценивает строку как код Python. Таким образом, вы можете сделать что-то вроде:
print(eval(MysteryCar).Owner)
Но в целом eval
считается рискованным и его следует избегать, на мой взгляд ...
Например, если ваш MysteryCar
является вводом пользователя, который может привести к серьезным проблемам, если пользователь введет какую-нибудь опасную команду.
С другой стороны, используя locals
, вы можете сообщить пользователю, если его выбор неверен, используя try/except KeyError