【发布时间】:2020-01-24 02:31:17
【问题描述】:
class Cellphone:
def __init__(self, manufact, model, price):
self.__manufact = manufact
self.__model = model
self.__retail_price = price
def set_manufact(self, manufact):
self.__manufact = manufact
def set_model(self, model):
self.model = model
def set_retail_price(self, price):
self.__retail_price = price
def get_manufact(self):
return self.__manufact
def get_model(self):
return self.__model
def get_retail_price(self):
return self.__retail_price
我有点理解 __init__ 是你必须在类中拥有的东西但是,其余的功能,如 def get_retail 或真正的其他功能,我不知道它们的目的是什么.. 我从其他网站上读过 __init__ 的作用,但我似乎真的无法理解它的想法。我知道如何使用 __init__ 但我不知道它实际上做了什么。 很抱歉,如果我的问题到处都是,这有点像我对整个班级的理解
【问题讨论】:
-
他们被称为getter/setter
-
我想我的问题变成了 getter/setter 做什么?即使没有它们,代码也会运行良好吗?我看不出使用它们的意义
-
这看起来像是将 Java (?) 编程风格应用于 Python 代码的糟糕示例。动态语言允许以更简洁的方式实现相同的结果,例如,
dataclasses。