0

まず第一に、スタックオーバーフローがこの議論でいっぱいであることを私は知っています(しかし、レビューの質問を検討することができます)。Pythonプロジェクトを整理する方法について質問があります。

このリンクから私はこの素敵なスキーマを見つけました

/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またはmain.pyにありますか?
  2. fooがmain.py(またはevaluate.py)にある場合、evaluate.py(またはmain.py)には何が含まれていますか?
  3. 時々私は見つけutilities.pyたりmodule.py。ユーティリティ.py/module.pyにはどのようなものが含まれていますか?

前もって感謝します

4

1 に答える 1

1

私のコーディングスタイルから main.py::常に外部のenvironから変数を初期化し、設定ファイルをロードすることについて簡単なことをします。そして、実際のロジックをラップします。例えば:

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.pyまたはutils.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にありますか?A:上記を参照してください。

最後に、知っておくべき最善のアプローチは、プロジェクト全体を学ぶことだと思います。QAが役に立たないことがわかります。

于 2013-01-09T08:29:26.837 に答える