SORU
19 Mayıs 2009, Salı


Python modülleri özellikleri nesneler aynı şekilde olabilir mi?

Python özellikleri ile böyle yapabilirim

x.y

sadece bir değer döndürmek yerine bir işlevi çağırır.

Bir şekilde modülleri ile bunu yapmak için var mı?

İstediğim bir durum var m.y bir fonksiyonu çağırmak yerine sadece orada depolanan değeri dönüyor.

C

CEVAP
19 Mayıs 2009, Salı


Yeni-stil sınıfları tek örneği özelliklere sahip olabilir. Python böyle bir örnek bir modül olduğuna inanıyorum sys.modules[thename] = theinstance içinde saklamak. Bu yüzden, örneğin, m.py modül dosyası olabilir:

import sys
class _M(object):
  def __init__(self):
    self.c = 0
  def afunction(self):
    self.c  = 1
    return self.c
  y = property(afunction)
sys.modules[__name__] = _M()

Düzenlenmiştir: kaldırıldı bütünsel örtülü bir bağımlılık (hiçbir şey bu örneğin amacı ile ama orijinal kodu başarısız yaparak kafa karıştıran şeyler mi vardı!).

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Darren Kitchen

    Darren Kitch

    3 EKİM 2011
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • megablueblaster

    megablueblas

    23 HAZİRAN 2006