Python-我应该将助手函数放在类内还是类外?

2024-04-28 09:58:09 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,如果类的某些方法需要helper函数,但是helper函数本身在类中不使用任何东西,我应该将helper函数放在类的内部还是外部?

我试着把它放进去,但派林抱怨说这个函数本来可以放在外面。

@卡尔:

该类是一个软件升级程序,如果该文件夹尚不存在,helper函数将创建一个新文件夹。到目前为止,类在一个模块中几乎只包含该类的代码。以后可能会添加其他类。


Tags: 模块方法函数代码程序helper文件夹软件
2条回答

助手函数可能更适合模块级而不是类。

如果您不同意这种情况,则可以在类内的函数上使用staticmethod decorator。简单地说,静态方法在同一类的对象实例化之间的行为是相同的。它不依赖实例数据。

出于这个原因,staticmethoddecorator在函数上呈现行为,这样它就不会采用文档中所述的隐式第一个参数(通常是self)。

当决定将helper函数放在何处时,我问的问题是:“它只针对这个类吗?”如果它可以在其他地方提供帮助,那么它就进入模块级;如果它确实只针对这个类,那么它就进入到带有staticmethod(不需要类数据来完成它的工作)或classmethod(使用一些类而不是实例数据来完成它的工作)的类中。

另一个python代码检查器是pyflakes

相关问题 更多 >