Как получить имя переменной python
Перейти к содержимому

Как получить имя переменной python

  • автор:

Как получить строковые имена переменных в 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: Выбор имени переменной

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

Компьютеру без разницы, как мы именуем ту или иную переменную. Названия важны только людям. Обычно программисты гораздо чаще читают чужой код, чем пишут свой. Чтобы коллеги смогли с легкостью прочитать и проанализировать ваш код, нужно понятно называть переменные.

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

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

Среди разработчиков есть шутка: «Названия переменных — это одна из самых сложных вещей в программировании». Придумывать названия и правда сложно. Например, сложно назвать переменную, в которой хранится количество неоплаченных заказов от клиентов с задолженностью в предыдущем квартале.

Чтобы проверить себя, попробуйте сделать такое задание:

Придумайте название для переменной, в которой будет храниться «количество братьев и сестер короля».

Запишите его в блокноте или отправьте себе на почту. Не указывайте там ничего, кроме названия переменной. А через несколько уроков мы вернемся к этой теме.

Задание

Создайте переменную, описывающую количество своих братьев, и присвойте ей значение 2. Распечатайте содержимое переменной. Затем сравните свое имя с именем, которое используется в учительском решении.

Упражнение не проходит проверку — что делать? ��

Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:

  • Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.

В моей среде код работает, а здесь нет ��

Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.

Мой код отличается от решения учителя ��

Это нормально ��, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.

В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.

Прочитал урок — ничего не понятно ��

Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.

Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.

Полезное

  • Именование в программировании
  • Ошибки в именовании переменных

Определения

  • Переменная — способ сохранить информацию и дать ей имя для последующего использования в коде.

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 бронзовых знаков

Это совершенно бессмысленно, потому что вы сами пишите что получит функция, поэтому надо просто добавить кавачки

Как определить имя переменной передаваeмой в min(), max() в python?

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

  • Вопрос задан более трёх лет назад
  • 996 просмотров

2 комментария

Средний 2 комментария

sanya84

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

Вы в своём уме?

Makaroshka007

Тимур Покровский @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 @SoreMix Куратор тега Python

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *