【问题标题】:Python static class or functions in modules [duplicate]模块中的Python静态类或函数[重复]
【发布时间】:2016-06-08 11:22:53
【问题描述】:

我需要一些东西来组织一些实用功能。
变体 1。 创建模块并在此模块中编写所有函数。
变体 2。 (因为python没有静态类) 在主模块中创建仅包含静态方法的类

总的来说,没有太大的区别。喜欢:

变量 1)

import functionsmodule
workers = functionmodule.get_all_workers(**kwargs)

变量 2)

workers = FunctionClass.get_all_workers(**kwargs)

我喜欢第二个。 问题是:做这种组织的最佳方式是什么?

【问题讨论】:

  • 有什么理由为什么你喜欢第二个?
  • 没有没有最好的方法来做这样的组织,这取决于你想要实现什么。但是一般来说,第一种方法更适合于功能分散、互连性很小的情况,而则保留用于方法互连和相互使用的情况。

标签: python function class organization


【解决方案1】:

你也可以这样做:

from functionsmodule import get_all_workers, some_other_method

workers = get_all_workers(**kwargs)

在学习 python 几个月后,这是我的首选解决方案。它无需引用类或模块即可清理代码。如果您的实用程序方法名称不会与内置函数或其他函数发生冲突,我只会推荐这个

我通常会在一个通用包中组织这些可重用/实用程序并实现如下内容:

from common.functions import get_all_workers, some_other_method

workers = get_all_workers(**kwargs)

编辑:根据您的“get_all_workers”方法名称 - 我想这应该进入某种持久性/工作者类而不是通用实用程序类

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-24
    • 2011-04-04
    • 2015-10-27
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 2012-03-09
    相关资源
    最近更新 更多