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

  • Austin Evans

    Austin Evans

    5 AĞUSTOS 2007
  • Barnacules Nerdgasm

    Barnacules N

    20 Temmuz 2006
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006