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

  • Bennythecoder

    Bennythecode

    25 Mart 2008
  • New Scientist

    New Scientis

    27 Kasım 2006
  • undrmyumbrellaa

    undrmyumbrel

    25 Temmuz 2012