Basit bir sınıfı myattribute
özniteliğinde hata ayıklamak istiyorum.str.format öğesini doğrudan '__repr__` olarak kullanabilir miyim?
class SimpleClass:
def __repr__(self):
return "{0.myattribute}".format(self)
Biraz gereksiz hissediyor, bu yüzden doğrudan format
kullanmayı tercih ediyorum: Böyle bir repr
yöntemi oluşturmak
class SimpleClass:
__repr__ = "{0.myattribute}".format
... ama bu bir IndexError: tuple index out of range
başarısız olur. format
'un self
argümanına erişemediğini anlıyorum, ancak nedenini göremiyorum.
ben yanlış mı yapıyorum, bu CPython sınırlama – veya başka nedir?
Bunu yapamazsınız '__repr__ = lambda self:" {0.myattribute} ". Format (self)' ama bence bir 'def' –
notundan daha beter: bunu yapma. –
El ışık açıklamanızın, muhtemelen ciltli ve ilişkisiz yöntemler arasındaki farkla ilgili olması gerektiğidir. – NPE