SORU
8 ŞUBAT 2011, Salı


Nasıl bir sınıf nesnesi için özel bir dize gösterimini oluşturmak için?

Düşünün bu sınıf

class foo(object):
    pass

Varsayılan dize gösterimini bu gibi görünür:

>>> str(foo)
"<class '__main__.foo'>"

Nasıl bu ekran özel bir dize yapabilir miyim?

CEVAP
8 ŞUBAT 2011, Salı


Sınıfın metaclass __str__() __repr__() uygulamak.

class MC(type):
  def __repr__(self):
    return 'Wahaha!'

class C(object):
  __metaclass__ = MC

print C

Eğer okunabilir bir stringification kastediyorsan __str__ kullan, kullan kesin gösterimleri için __repr__.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Booredatwork.com

    Booredatwork

    5 Ocak 2009
  • Makeup Lover

    Makeup Lover

    12 HAZİRAN 2011
  • oHeymarvin

    oHeymarvin

    11 Temmuz 2013