使用@property装饰器来创建只读属性,@property装饰器会将方法转换为相同名称的只读属性,可以与所定义的属性配合使用,这样可以防止属性被修改。

class Server():
    def get_name(self):
        return 'a'

    @property
    def start(self):
        return 'a'

obj = Server()

# 不加property,调用方法要加括号
print(obj.get_name())

# 加property,调用方法不需要加括号
print(obj.start)