python-datamodel

Почему вы не можете переопределить имя класса декларативно, например, чтобы использовать имя класса, которое не является допустимым идентификатором? >>> class Potato: ... __name__ = 'not Potato' ... >>> Potato.__name__ # doesn't stick 'Potato' >>> Potato().__name__ # .. ...

У меня есть класс, в котором я хочу переопределить оператор __eq__(). Кажется, имеет смысл, что я должен также переопределить оператор __ne__(), но имеет ли смысл реализовать __ne__ на основе __eq__ как такового? class A: def __eq__(self, other): return self.value == other.value def __ne__(s...

Что такое метаклассы и для чего мы их используем?...

учитывая функцию Python: def aMethod(arg1, arg2): pass Как я могу извлечь число и имена аргументов. Т. е., учитывая, что у меня есть ссылка на func, я хочу func.[что-то], чтобы вернуться ("arg1", "arg2"). сценарий использования этого в том, что у меня есть декоратор, и я хочу использовать аргументы ме...

для целей ведения журнала я хочу получить полное имя класса объекта Python. (С полной квалификацией я имею в виду имя класса, включая имя пакета и модуля.) Я знаю, о x.__class__.__name__, но есть ли простой способ получить пакет и модуль?...

этот вопрос уже есть ответ здесь: Несколько меньше, чем минус бесконечность в Python? 1 ответ есть ли встроенный тип данных Python,кроме того None для которых: >>> not foo > None True здесь foo является...

Как я могу получить класс, который определил метод в Python? Я бы хотел, чтобы следующий пример напечатал "__main__.FooClass": class FooClass: def foo_method(self): print "foo" class BarClass(FooClass): pass bar = BarClass() print get_class_that_defined_method(bar.foo_method) ...

Я хочу иметь возможность создать класс (в Python), который после инициализации с __init__, не принимает новые атрибуты, но принимает изменения существующих атрибутов. Есть несколько способов взлома, которые я вижу, чтобы сделать это, например, имея __setattr__ метод def __setattr__(self, attribute, value): ...