Re: python: название переменной в виде строки
Имя имеет ссылка. На каждую переменную может быть несколько ссылок, поэтому нет однозначной связи между переменной и именем.
DKorolkov ★
( 24.11.05 11:45:17 MSK )
Ответ на: Re: python: название переменной в виде строки от DKorolkov 24.11.05 11:45:17 MSK
Re: python: название переменной в виде строки
А нельзя ли как-нибудь «выдрать» название переменной, например, из locals(); там оно хранится в виде строки (и как-то в эту строку транслируется). Получается, что по названию переменной можно определить её значение, а наоборот — нет?
anonymous
( 24.11.05 11:57:27 MSK )
Ответ на: Re: python: название переменной в виде строки от anonymous 24.11.05 11:57:27 MSK
Re: python: название переменной в виде строки
А зачем вам это нужно? Объясните задачу, может быть можно решить её по другому? > А нельзя ли как-нибудь "выдрать" название переменной, например, из locals(); locals() возвращает словарь, где ключи - имена переменных. Выдрать можно, например, так: for name,value in locals().items(): if value is x: print name Результат может быть не единственным, если на это значение есть несколько ссылок. Ну и эффективность, конечно же, не та.
DKorolkov ★
( 24.11.05 12:26:40 MSK )
Ответ на: Re: python: название переменной в виде строки от DKorolkov 24.11.05 12:26:40 MSK
Re: python: название переменной в виде строки
>А зачем вам это нужно? 1. Конкретная задача: есть список переменных, значения которых нужно отобразить в полях формы. Причём название поля = название переменной. 2. Интересно :) >может быть можно решить её по другому? да, конечно, на данный момент я делаю примерно так: for entry, value in (("x", x), ("y", y), ("z", z)): gui.get_widget (entry).set_text (value)
anonymous
( 24.11.05 13:18:31 MSK )
Ответ на: Re: python: название переменной в виде строки от anonymous 24.11.05 13:18:31 MSK
список переменных
> 1. Конкретная задача: есть список переменных, значения которых нужно отобразить в полях формы. Причём название поля = название переменной.
А зачем их делать отдельными переменными? Поместите их все в словарь.
Получение имени переменной как строки
Получение определённой части имени папки и сохранение полученной строки в файле и в переменной
Добрый день. Прошу помощи. Есть папка с именем abcd_1234_asda . Требуется "вычленить" из имени.

Получение имени переменной
Есть перечисление, нужно получить имена переменных этого перечисления. #include <iostream> .

Получение из строки имени и значений параметров
Стоит такая задача: На входе задана строка, где задано название параметра и ряд его значений.
Создание имени переменной из строки
Как создать имя переменной из строки в VBS? В JS это: window-глобальная переменная this -.
Просто Лис
![]()
5321 / 3335 / 1021
Регистрация: 17.05.2012
Сообщений: 9,768
Записей в блоге: 9
1 2 3 4 5 6 7 8 9 10 11 12 13
#!/usr/bin/python3 class Directory(object): def __init__(self, parent): self.parent = parent def __getattribute__(self, value): return value d = Directory('..') print(d.dir1) print(d.dir2)
Регистрация: 06.01.2018
Сообщений: 10
Простите, я так и не понял, что это за темный лес, и как получить имя переменной. Откуда-то опять взялось dir1, хотя переменную вы назвали d
671 / 474 / 215
Регистрация: 06.09.2013
Сообщений: 1,301
Сообщение от pochatok228 
как получить имя переменной
а в __init__ это вряд ли получится сделать поскольку скорее всего имя переменной и объект будут связаны после выхода из функции __init__
Да и вообще с одним и тем же объектом может быть связаны много переменных, и какое из них имя вы хотите получить?
Ну вот, например, можно так попробовать:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
class A: def __init__(self): pass @property def name(self): for k, v in globals().items(): if v == self: return k; a = A() b = A() print(a.name) print(b.name) b = a print(b.name)
Вывод:
a
b
a
![]()
4615 / 2036 / 359
Регистрация: 17.03.2012
Сообщений: 10,103
Записей в блоге: 6
Не надо так делать. Пусть мертвые хоронят своих мертвецов имена переменных останутся для отладки.
А вы лучше используйте строковые индексы.
Просто Лис
![]()
5321 / 3335 / 1021
Регистрация: 17.05.2012
Сообщений: 9,768
Записей в блоге: 9
woldemas, оно не будет работать:
1 2 3 4 5
def f(): a = A() print(a.name) f()
671 / 474 / 215
Регистрация: 06.09.2013
Сообщений: 1,301
Рыжий Лис, конечно, это только для глобальных переменных
да и в сущности вообще ерунда полная, которую нельзя использовать, я привел ее, чтобы показать, что две переменные ссылаются на один объект
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как по имени переменной вывести значение этой переменной?
К примеру: У нас есть заранее установленный переменные. Мы просим пользователя ввести имя.
Часть имени переменной как значние другой переменной
Нужно чтобы имя переменной состояло как бы из двух частей к примеру переменную x1 надо записать.
Обращение к переменной по имени в представлении строки
Я даже не представляю, как это можно обьяснить ,чтобы понять. Есть цикл, в нем перебирается скроки.
Получение переменной из адресной строки строки
Собственно сабж. Есть такой кусок кода, отвечает за получение получение токена-ключа с помощью.

Получение значения переменной из строки
Здравствуйте. Имеется строка такого вида: javascript:var user_id="hfy36ty54";func(user_id); .
SSI получение переменной из get-строки
Добрый день! Использую SSI. <!— #echo var=’QUERY_STRING’—> — получение всего QueryString.
Как подставляя значение переменной к неполному имени переменной обратиться «куда надо»?
Салют, нужно в циклах обращаться к разным переменным ($b1-$b5), но так ручками писать муторно.
Python: Выбор имени переменной
С подобной программой мы уже работали, но сейчас в ней изменилось имя переменной на x .
Компьютеру без разницы, как мы именуем ту или иную переменную. Названия важны только людям. Обычно программисты гораздо чаще читают чужой код, чем пишут свой. Чтобы коллеги смогли с легкостью прочитать и проанализировать ваш код, нужно понятно называть переменные.
Важно придумать понятное название, которое отражает смысл переменной. При этом важно давать такие имена, которые будут понимать без контекста, без изучения окружающего кода.
Существует общепринятое правило: не используйте транслит для имен — только английский язык. Если вы испытываете сложности с английским, то пользуйтесь переводчиком. Со временем, копаясь в чужом коде, вы научитесь правильно именовать переменные.
Среди разработчиков есть шутка: «Названия переменных — это одна из самых сложных вещей в программировании». Придумывать названия и правда сложно. Например, сложно назвать переменную, в которой хранится количество неоплаченных заказов от клиентов с задолженностью в предыдущем квартале.
Чтобы проверить себя, попробуйте сделать такое задание:
Придумайте название для переменной, в которой будет храниться «количество братьев и сестер короля».
Запишите его в блокноте или отправьте себе на почту. Не указывайте там ничего, кроме названия переменной. А через несколько уроков мы вернемся к этой теме.
Задание
Создайте переменную, описывающую количество своих братьев, и присвойте ей значение 2. Распечатайте содержимое переменной. Затем сравните свое имя с именем, которое используется в учительском решении.
Упражнение не проходит проверку — что делать?
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя
Это нормально , в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
- Именование в программировании
- Ошибки в именовании переменных
Определения
- Переменная — способ сохранить информацию и дать ей имя для последующего использования в коде.
Как определить имя переменной передаваeмой в min(), max() в python?
Как мне теперь понять, что 0 это переменная с именем a?
- Вопрос задан более трёх лет назад
- 928 просмотров
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)