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

  • Djbasilio AuToBaSs

    Djbasilio Au

    20 Aralık 2008
  • Max Lee

    Max Lee

    18 AĞUSTOS 2006
  • Project Mooncircle

    Project Moon

    6 Aralık 2009