Вопросы с тегом «metaclass»


22
Создание синглтона в Python
Этот вопрос предназначен не для обсуждения того, является ли шаблон проектирования синглтона желательным, является ли он антипаттерном или для каких-либо религиозных войн, а для обсуждения того, как этот шаблон лучше всего реализовать в Python таким способом, который наиболее питоничен. В данном случае я определяю «самый питонический» как означающий, что он …


6
Как работает Мета-класс Джанго?
Я использую Django, который позволяет людям добавлять дополнительные параметры в класс с помощью class Meta. class FooModel(models.Model): ... class Meta: ... Единственное, что я нашел в документации Python, было: class FooMetaClass(type): ... class FooClass: __metaclass__ = FooMetaClass Однако я не думаю, что это одно и то же.
191 python  django  metaclass 

19
Каковы (конкретные) варианты использования метаклассов?
У меня есть друг, который любит использовать метаклассы и регулярно предлагает их в качестве решения. Я считаю, что вам почти никогда не нужно использовать метаклассы. Зачем? потому что я считаю, что если вы делаете что-то подобное с классом, вам, вероятно, следует делать это с объектом. И небольшой редизайн / рефакторинг …
118 python  metaclass 

4
Каковы различия между `classmethod` и метаклассом?
В Python я могу создать метод класса, используя @classmethodдекоратор: >>> class C: ... @classmethod ... def f(cls): ... print(f'f called with cls={cls}') ... >>> C.f() f called with cls=<class '__main__.C'> Кроме того, я могу использовать обычный (экземпляр) метод на метаклассе: >>> class M(type): ... def f(cls): ... print(f'f called with …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.