Как можно вывести на экран название переменной?

Хочу вывести на кран название переменной.

Есть какой-нибудь метод, чтобы при использовании в коде вместо знаков вопроса можно было написать и вывести на экран название переменной (Что-то на подобии метода __name __() у функций)?

def sample_func():
  pass
sample_value = {}
sample_value['my_key'] = 45

print(sample_value.__repr__())  # {'my_key': 45}
print(sample_func.__name__)     # sample_func
# ?????                         # sample_value

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

Автор решения: Kostya_200808

В Python нельзя получить название переменной напрямую, но можно попробовать найти название переменной через подбор значений переменных.

def get_variable_name(var):
    variables = globals()
    for name, value in variables.items():
        if value is var:
            return name
    return None

x = 42
variable_name = get_variable_name(x)
print(variable_name)

Единственным минусом этого кода является возможное отсутствие правильного ответа при одинаковых значений у нескольких переменных.

→ Ссылка