私のプログラムを設計するためのソリューションを探しています。Python /インポートとプログラムの設計
私のプログラムは、3つのブロックで構成されています。私は
program_folder/
main.py
classes_folder/
class_1.py
class_2.py
functions_folder/
set_of_func_1.py
set_of_func_1.py
utilities_folder/
set_of_utilities_1.py
set_of_utilities_1.py
:
- クラス
- 機能私は私のプログラムこの方法を構築したい
- その他のユーティリティ
したい:
- «classes_folder»のスクリプトはいずれも «functions_folder»のスクリプトをインポートできました。
- «functions_folder»のスクリプトでは、 は«utilities_folder»のスクリプトをインポートできました。
- すべてのスクリプトは でした。通常はmain.pyによって使用されています。
- «メイン»(
if __name__ == “__main__”:
いくつかのテスト)として を働いていたとき«classes_folderの»、 内のすべてのスクリプトは、«functions_folder»と«utilities_folderの»は、«program_folder» が(私のコンピュータで任意の場所にある可能性が試験することができます«program_folder»への正確なパスに依存するものではありません。- «classes_folderの»のすべてのスクリプト、 «functions_folderの»と«utilities_folderの»の変更インポート検索パスを:すべての私は私が持っていると思った以上のことから
。
- 現在の作業 ディレクトリをすべてのスクリプトの«program_folder»に設定しますか?
私はそれを行う方法はありますか?
私のアイデアはよく見えるのですか、または予期しない問題がありますか?
どのようにそれは別のフォルダにクラスや関数を分割するのが一般的である。その結果
、など
import my_project.a
は、彼らが意味することをでしょうか?そして、機能は、自分のフォルダを保証するようなutilsとどのように違うのでしょうか? –明確にするには、util、func、クラスなどを自分のフォルダに分割するのではなく、そのような_layout_を持つことが一般的です。アイデアをより明確にするために著者の名前をコピーしただけです。趣味やプロジェクトの論理構造によっては、必要なものはすべてサブフォルダに入れることができます。 – devforfu