【发布时间】:2014-06-14 18:16:48
【问题描述】:
如果我想创建一个其他类将继承的基类,但从不使用类变量,我应该将类变量设置为什么?
例如:
class Spam:
time_to_cook = None
def eat(self):
...
class SpamWithEggs(Spam):
time_to_cook = Minutes(5)
def eat(self):
...
所有子类都有自己的time_to_cook,所以Spam中的值对程序的运行没有影响。
class Spam:
time_to_cook = None
对我来说看起来不错,但它没有提供有关 time_to_cook 类型的任何信息。所以我倾向于
class Spam:
time_to_cook = Minutes(0)
但这可能会给人一种误导的印象,即实际使用了 time_to_cook 的值。
我也在考虑完全忽略它,而是在文档字符串中提及它。
【问题讨论】:
-
您也可以将其设置为 None 或零或您想要的任何占位符值,并且在文档字符串中提及它应该设置为什么样的值。
-
请注意,
SpamWithEggs不是Spam的子类(因为后者未列为前者的基类)。 -
@martineau OOP,现已修复。
-
能不能设置成
Minute(0),然后放一个doc字符串说基类中没有用到?
标签: python oop coding-style class-attributes