为什么需要空函数?

时间:2018-08-30 14:37:12

标签: python

def func():
    pass

任何人都可以描述用例或给出python中空函数用法的实时示例吗?

4 个答案:

答案 0 :(得分:2)

可能会制作一些空函数来概述算法的高级概述,然后再进行各种功能的研究;一个占位符。

答案 1 :(得分:2)

尽管它们很方便,但是是否需要“有争议”。

但是,我认为大多数人都同意需要pass语句,并且需要函数定义,而python 不需要是一个特殊情况,它会阻止您使用pass是函数中的唯一语句。

答案 2 :(得分:2)

空函数定义在任何语言中都是毫无意义的或有用的,这里没有特定于Python的内容。在任何情况下,您都可能需要编写空函数,例如需要一个虚拟函数进行测试,草绘代码,抽象类等等。

这里唯一的特别之处是Python的pass,这只是一个语法要求。在其他语言中,您可能会编写function () {},而Python则要求您使用空格和缩进来分隔函数,因此您必须 在其中编写 。而且,pass并不是让每个人都定义自己的约定以应对这种情况,而是存在的。

答案 3 :(得分:1)

这是我的一个项目的真实例子。

该项目允许用户配置任意动作,这些动作可以传递给程序的各个部分,因此他们可以触发对特定事件的可自定义响应。

用户可能对某些事件也没有兴趣。但是必须指定一个动作,否则整个项目中每个动作的每次使用都必须测试None,这很容易出错。

因此DoNothing操作:

class DoNothing(Action):
    async def __call__(self, context=None):
        pass

(如果动作是简单的函数,它将只是def DoNothing(): pass,但我的动作还有其他方法,而NoNothing则不需要重写)。

相关问题