«metaclass» etiketlenmiş sorular


22
Python'da bir singleton oluşturma
Bu soru, tektonlu tasarım deseninin istenip istenmediği, bir anti-desen olup olmadığı veya herhangi bir dini savaş için tartışılmak değil, bu desenin Python'da en çok pitonik bir şekilde en iyi nasıl uygulandığını tartışmak içindir. Bu örnekte, 'en az şaşkınlık ilkesini' izlediği anlamına gelen 'en pitonik' tanımlıyorum . Tek tek haline gelecek …


6
Django'nun Meta sınıfı nasıl çalışır?
Ben kullanarak bir sınıfa ekstra parametreler eklemek için izin Django kullanıyorum class Meta. class FooModel(models.Model): ... class Meta: ... Python'un belgelerinde bulduğum tek şey: class FooMetaClass(type): ... class FooClass: __metaclass__ = FooMetaClass Ancak bunun aynı şey olduğunu düşünmüyorum.
191 python  django  metaclass 

19
Metasınıflar için bazı (somut) kullanım durumları nelerdir?
Metasınıfları kullanmayı seven ve düzenli olarak bunları çözüm olarak sunan bir arkadaşım var. Metasınıf kullanmaya neredeyse hiç ihtiyaç duymadığınız aklıma geldi. Neden? çünkü bir sınıfa böyle bir şey yapıyorsanız, muhtemelen bir nesneye yapmalısınız diye düşündüm. Ve küçük bir yeniden tasarım / yeniden düzenleme sırayla. Metasınıfları kullanabilmek, birçok yerde birçok insanın …
118 python  metaclass 

4
Bir 'sınıf yöntemi' ve bir metasınıf yöntemi arasındaki farklar nelerdir?
Python, @classmethoddekoratör kullanarak bir sınıf yöntemi oluşturabilir : >>> class C: ... @classmethod ... def f(cls): ... print(f'f called with cls={cls}') ... >>> C.f() f called with cls=<class '__main__.C'> Alternatif olarak, bir metasınıfta normal (örnek) bir yöntem kullanabilirim: >>> class M(type): ... def f(cls): ... print(f'f called with cls={cls}') ... …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.