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

  • Lamborghini

    Lamborghini

    13 Aralık 2005
  • mipd1980

    mipd1980

    25 EKİM 2006
  • MotoManTV

    MotoManTV

    10 Aralık 2009