SORU
12 Kasım 2008, ÇARŞAMBA


Nasıl Python programlı bir nitelik musunuz?

Bir python x ve bir dize s nasıl özniteliği ayarlarım s x nesne yoktur sanırım? Yani:

>>> x = SomeObject()
>>> attr = 'myAttr'
>>> # magic goes here
>>> x.myAttr
'magic'

Sihir nedir? Bu hedefi, bu arada, x.__getattr__() önbellek çağırır.

CEVAP
12 Kasım 2008, ÇARŞAMBA


setattr(x, attr, 'magic')

Üzerinde: yardım için

>>> help(setattr)
Help on built-in function setattr in module __builtin__:

setattr(...)
    setattr(object, name, value)

    Set a named attribute on an object; setattr(x, 'y', v) is equivalent to
    ``x.y = v''.

Düzenleme: Ancak, bir "bir" nesne. örnek saf bunu yapamazsın dikkat etmelisiniz yorum belirttiği gibi () Ama iyi çalışır nerede nesnenin basit bir alt sınıf olması muhtemeldir. Güçlü O. P. hiç böyle bir nesne örneklerini yapmak için davet ediyorum.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008
  • Hak5DarrensVlog

    Hak5DarrensV

    11 EYLÜL 2009
  • OnlyFunClips

    OnlyFunClips

    16 ŞUBAT 2012