Python不会强迫你使用OOP,比如Java或C,因此如果你没有真正的好处,你就不需要把东西放到类中。在
尤其是创建一个类实例来分组并不是最好的方法。你可以把这些东西提取到一个模块中。这不需要任何实例,只需要导入。这样它也在一个单独的文件和命名空间中。在
示例:
main.py:if __name__ == "__main__":
import sys
args = sys.argv[1:]
if len(args) != 2:
print("This script requires exactly two command-line arguments!")
exit(1)
import my_module
exit_code = my_module.run(args) or 0
exit(exit_code)
else:
raise ImportError("Run this file directly, don't import it!")
my_module.py:
^{pr2}$
但是,不要把这种方法当作终极真理!这是我个人的(不是那么)谦虚的看法,但总有一些情况下,一种方法更适合,有些情况下,其他方法应该被优先考虑。在
同样,这主要是一个设计问题,对程序的稳定性或功能没有实际影响。它可能只会提高可读性,但特别是对于小脚本来说,这不是一个好方法,因为它添加了很多实际上没有任何作用的代码。我想说,只有当你有一个包含多个模块的大型项目时,它才有用。在
对于相当小的脚本(单个文件或只有很少的模块),我建议只在顶部定义所有需要的类和函数,然后使用标准的if __name__ == "__main__"作为入口点。在