Python的 – 我应该把我的帮助函数内部或外部的类?

在Python中,如果一个的某些方法需要一个辅助函数,但是辅助函数本身没有在类中使用任何东西,我应该把辅助函数放在类内还是外?

我试图把它放在里面,但PyLint抱怨说这个函数可能已经放在了外面。

@Karl:

这个类是一个软件升级器,如果该文件夹还不存在,辅助函数会创build一个新的文件夹。 这个类在一个模块中,几乎只有这个类的代码。 其他课程可能会在稍后添加。

2 Solutions collect form web for “Python的 – 我应该把我的帮助函数内部或外部的类?”

在决定把助手function放在哪里的时候,我问的问题是“这只是为了这个class级吗?” 如果可以在其他地方帮助,那么它在模块级别; 如果它确实只用于这个类,那么它会以staticmethod (不需要类数据来完成它的工作)或classmethod (使用一些类而不是实例数据来完成它的工作)进入类。

另一个python代码检查器是pyflakes 。

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

如果您不同意这种情况,那么您可以在类中的函数上使用staticmethod装饰器 。 简而言之,一个静态方法在同一个类的对象实例之间performance相同。 它不依赖于实例数据。

由于这个原因, staticmethod装饰器在函数上呈现行为,使得它不会像文档中所述那样采用隐式的第一个参数(通常是self )。

  • 芹菜任务,运行更多的任务
  • 最长的子序列
  • python - 检查奇数/偶数和改变输出的数字大小
  • 如何testing或模拟“如果__name__ =='__main__'”的内容
  • 在python中的asynchronous编程
  • 如何限制一个Django模型中的数字字段的最大值?
  • Url在Python中解码UTF-8
  • 一起使用烧瓶和龙卷风?
  • 如何修复Python的鼻子:覆盖率不可用:无法导入覆盖率模块
  • Python删除一个string中的所有空格
  • 反引号对python解释器意味着什么:`num`