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

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

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

@Karl:

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

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

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

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

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

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

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

  • 最好的方法来创build一个简单的Python Web服务
  • 用Python中的二进制文件读取整数
  • 在matplotlib中为y轴添加一个y轴标签
  • 使用%s的Python MySQL连接器数据库查询失败
  • 在Python中构build完整path文件名,
  • 在Python中提取一部分文件path(一个目录)
  • 使用BeautifulSoup来查找包含特定文本的HTML标签
  • Python函数属性 - 使用和滥用
  • 从terminal中检测python键盘input的最简单方法是什么?
  • 在单行中打印没有括号的列表
  • Python中os.system()的返回值是什么?