Код: Выделить всё
class obj(object):
def __init__(self):
self.name = ... # How to set this variable dynaically by using the variable name (on create) or the object name?
var = obj()
print(var.name) # should print "var" (assigned variable name), but how???
print(obj().name) # prints "obj" when changing the ellipsis into self.__class__.__name__
Как мне установить self.name в соответствии с тем, как obj< /code> создан объект?
Пример: я хочу напечатать «var», когда пишу var = obj(); print(var.name), в то время как он должен печатать "obj" в print(obj().name)
Еще одна вещь: Я не хочу передавать имя переменной в качестве аргумента, а хочу автоматизировать весь процесс.
Логика:
if obj назначается как переменная с именем var -> self.name = "var"
else: -> self.name = self.__class__.__name__< /код>
Подробнее здесь: https://stackoverflow.com/questions/784 ... ating-meth