python Как получить имени переменной в виде строки?
Избитый вопрос, мне нужно получить имя переменной в виде строки. Понимаю, что у переменных нет функции name — она в коде только для того, чтобы было понятней, что я хочу получить. Суть в том, что мне нужно только ИМЯ переменной чтобы получить доступ к базе данных по словарю. Мне глубоко фиолетово на что эта переменная ссылается, это совершенно не важно, только имя и всё. Нужно получить аналог W = F[‘spisok’] используя «x».
import shelve spisok = 12345 def ABC(x): F = shelve.open('База данных') W = F[x.__name__] Q = ABC(spisok)
Отслеживать
задан 21 дек 2020 в 15:49
103 1 1 серебряный знак 8 8 бронзовых знаков
Это совершенно бессмысленно, потому что вы сами пишите что получит функция, поэтому надо просто добавить кавачки
Как получить строковые имена переменных в python и несколько трюков с matplotlibe
Вернуть строкове имя конкретной переменной не получится. так как на один и тот же объект может ссылаться несколько переменных. Но можно вернуть все переменные для конкретного объета. В данном примере две разные переменные ссылаются на два разных объекта (которые под капотом python на самом деле один объект):
import inspect x = 1 y = 1 def retrieve_name(var): callers_local_vars = inspect.currentframe().f_back.f_locals.items() return [var_name for var_name, var_val in callers_local_vars if var_val is var] print(retrieve_name(y)) ['x', 'y']
Как получить строкове значение имени функции в python
__name__ работает с build in функциями. func_name нет
>>> import time >>> time.time.func_name Traceback (most recent call last): File "", line 1, in ? AttributeError: 'builtin_function_or_method' object has no attribute 'func_name' >>> time.time.__name__ 'time'
Как удалить линии сетки в [matplotlibe]
plt.grid(None)
в ряде случаев, если создана сетка, может потребоваться проитерирвоать
for i in range(4): for j in range(3): axs[i, j].grid(None)
%matplotlib inline from matplotlib import pyplot as plt plt.rcParams["axes.grid"] = False
Как задать размеры изображения для subplots в matplotlib
вот так, например:
fig, axs = plt.subplots(nrows=3, ncols=3) fig.set_figheight(25) fig.set_figwidth(25)
Как создать анотированную матрицу в matplotlib
Вот подробный гайд на эту тему. Если совсем лень, можно использовать seaborn.heatmap
Переменные в Python для начинающих
Любая программы состоит из набора команд и данных. Так вот, чтобы хранить данные, в любом языке программирования, и Python не исключение, есть такое понятие как переменные.
Переменная это не что иное, как имя, с помощью которого можно обратиться к данным, сохраненным в памяти компьютера. Другими словами, переменная — это именованная область памяти. Чтобы создать переменную и назначить ей значение используется оператор присваивания. Вот несколько примеров того, как создается, или, как говорят программисты, «объявляется» переменная
first = "синий"second = 23
Синтаксис «объявления» прост: достаточно написать имя переменной, знак «=» и значение переменной. У разных переменных могут быть разные типы данных. В нашем примере переменная first является строкой, а переменная second — числом. В Python, кроме строк и чисел, есть и другие типы данных. Если вы начинающий программист и не знаете, что такое типы данных, не переживайте, об этом будет рассказано чуть позже.
Самое простое, что можно сделать с переменной, это вывести на экран ее значение.
first = "синий"second = 23print(first, second)
Попробуйте запустить такую программу и посмотрите, что она выведет на экран.
Имена переменных ¶
Следует придерживаться нескольких несложных правил при выборе имен переменных:
- Имя переменной может содержать только латинские буквы, числа и символ нижнего подчеркивания;
- Имя переменной не должно содержать пробелов;
- Имя переменной не должно начинаться с цифры;
- Регистр важен: var и Var это разные переменные.
Называя переменные помните, что имена переменных не должны совпадать с ключевыми словами и наименованиями встроенных функций . Их использование в языке Python предназначено для других целей, которые нам с вами предстоит узнать позже и называть так переменные нельзя.
Хотите выучить Python на практике?
Как определить имя переменной передаваeмой в min(), max() в python?
Как мне теперь понять, что 0 это переменная с именем a?
- Вопрос задан более трёх лет назад
- 910 просмотров
2 комментария
Средний 2 комментария

Как мне теперь понять, что 0 это переменная с именем a?
Вы в своём уме?

Тимур Покровский @Makaroshka007
мне кажется, что лучше использовать списки
Решения вопроса 0
Ответы на вопрос 5
Вам это не надо. Вы работаете с данными, а не с именами переменных.
Дичь, но это «то, что надо»:
a = 0 b = 1 c = 2 d = 3 alls = min(a, b, c, d) globs = globals().copy() for i in globs: if id(globs[i]) == id(alls): print("имя переменной, у которой самый маленький int:", i) break
all — зарезервированное имя, не используйте его.
Ответ написан более трёх лет назад
Комментировать
Нравится 2 Комментировать
d= print(min(d, key=d.get))
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать

soremix @SoreMix Куратор тега Python
min, max и другие возвращают только минимальное значение, никак не название переменной с минимумом.
Можете просто определить свою переменную, обозначающую минимальное число
min_num = min(a,b,c,d)