10 HAZİRAN 2011, Cuma
Python özelliği özelliğini kullanma ile ilgili gerçek hayattan örnek?
Nasıl kullanılacağını merak ediyorum@özellikleriPython. Python belgeleri okudum ve örnek orada, benim görüşüme göre, sadece bir oyuncak kod:
class C(object):
def __init__(self):
self._x = None
@property
def x(self):
"""I'm the 'x' property."""
return self._x
@x.setter
def x(self, value):
self._x = value
@x.deleter
def x(self):
del self._x
Bu sarma ne alabilirim bilmiyorum_xözellik dekoratör ile dolu. Neden sadece uygulamak değil:
class C(object):
def __init__(self):
self.x = None
Özellik özellik bazı durumlarda yararlı olabileceğini düşünüyorum. Ama ne zaman? Biri bana gerçek dünyadan bazı örnekler verebilir misiniz?
Teşekkürler.
CEVAP
10 HAZİRAN 2011, Cuma
Diğer örnekler doğrulama/karmaşık ve hızla değişen şartlar kümesi öznitelikleri (onları sınırları içinde olmak ya da kabul edilebilir zorlama) ve tembel değerlendirme filtreleme olurdu.
Karmaşık hesaplama bir nitelik arkasında gizli:
class PDB_Calculator(object):
...
@property
def protein_folding_angle(self):
# number crunching, remote server calls, etc
# all results in an angle set in 'some_angle'
# It could also reference a cache, remote or otherwise,
# that holds the latest value for this angle
return some_angle
>>> f = PDB_Calculator()
>>> angle = f.protein_folding_angle
>>> angle
44.33276
Doğrulama:
class Pedometer(object)
...
@property
def stride_length(self):
return self._stride_length
@stride_length.setter
def stride_length(self, value):
if value > 10:
raise ValueError("This pedometer is based on the human stride - a stride length above 10m is not supported")
else:
self._stride_length = value
Bunu Paylaş:
Kovaryans ve contravariance gerçek hay...
Bir kullanma ile ilgili kurallar C tan...
Python @alıcıları ve ayarlayıcıları öz...
İlan özellikleri ilgili bir örnek gere...
pip: birden fazla Python ile ilgili ve...