我正在寻找Python对象中实例变量自动验证的建议。验证应在实例化或设置后立即进行。
例如,设想一个类:
import recordtype
class TemperatureReading(recordtype.recordtype('TemperatureReading',
['lat','long','alt','temp'])):
pass
我希望能够将lat约束到+/- 90,长到+/- 180,alt> = 0,并且temp> = 0。
写出getter和setter似乎太不具有Pythonic和乏味。还有更好的方法吗?
答案 0 :(得分:0)
编写getter和setter,但使用Python properties,这样对用户来说就不那么繁琐了。您可以使用metaclass进行一些简单的元编程,以使类编写者不那么乏味。