在Python中,设置只读属性的方法主要有两种:
1. 使用`@property`装饰器:
class MyClass:
def __init__(self, value):
self._value = value
@property
def value(self):
return self._value
2. 使用`__setattr__`方法:
class MyClass:
def __init__(self, value):
self._value = value
def __setattr__(self, name, value):
if name == '_value':
super().__setattr__(name, value)
else:
raise AttributeError("Attribute '{}' is read-only".format(name))