编程风格- Python:如何组织Python项目的建议.一些问题



首先感谢,我知道堆栈溢出充满了这个论点(但我们可以考虑一个复习问题)。我有一些关于组织Python项目的问题。

从这个链接中我找到了这个不错的schema

/myproject
   /__init__.py # This makes it a Python package and importable.
   /evaluate.py # Contains the code to actually do calculations.
   /main.py # Starts the application
   /ui.py # Contains the code to make a pretty interface

从这个网站__init__.py通常是空的

我的问题是:

  1. 假设你有一个函数(def foo)。foo位于Evaluate.py还是in main.py?
  2. 如果foo位于main.py(或evaluate.py),则求。py(或main.py)包含吗?
  3. 有时我发现utilities.py和/或module.py。.py/module.py包含哪些实用程序?

Thanks in advance

从我的编码风格:main.py:总是做一些简单的事情,从外部环境初始化变量和加载配置文件。把实际的逻辑东西包起来。例如:

from evaluate import actual_things
def run():
    ...
    actual_things()
    ...
if __name__ == '__main__':
    init()
    load_from_config()
    run()

Q:有时我发现utilities.py和/或module.py。.py/module.py包含哪些实用程序?A: utilities.pyutils.py通常是助手。如编码解码、加密等

Q:如果foo位于main.py(或evaluate.py)中,evaluate.py(或main.py)包含哪些内容?A:你必须指出foo是做什么的,根据foo的功能,我们把foo定位到某个地方。如果foo是一个业务函数,foo应该位于evaluate.py中。

Q:假设你有一个函数(def foo)。foo位于evaluate.py或main.py?答:见上图。

最后,我认为最好的方法是全面了解一个项目。你会知道QA帮不上什么忙。

最新更新