我最近开始在一家从事Python工作的公司工作,在他们的代码中,他们有一个类,它定义了一些什么都不做的函数,什么都不返回。代码几乎完全
...
...
def foo(self):
return
我真的很困惑为什么有人会这样做,我的经理不在我身边。为了儿童类的抽象,人们会这样做吗?这个函数将来会被覆盖的信号?我特别关注的类继承自一个不包含任何返回任何函数的基类,所以我知道至少这个类没有做某种奇怪的函数重写。
答案 0 :(得分:5)
有时候,如果一个类可以与API中的另一个类互换使用,那么提供不做太多(或任何事情)的函数是有意义的。但是,根据API,我通常希望这些函数返回NotImplemented
之类的内容。
或者,也许有人在前一天晚上没有得到足够的睡眠而忘记了他们正在打字的东西......或者在没有完成他们工作的情况下被叫去参加会议......
最终,如果没有对您正在使用的代码有很好的了解,没有人能够知道实际原因。基本上 - 我等你的老板或同事过来问问。
答案 1 :(得分:4)
如果函数具有有意义的名称,那么它可能是未来预期功能的框架。