Pythonで作るアプリケーションの基本ディレクトリ構造

システム開発Tips

Python デビュー

Pythonで簡単なツールを作成したときのディレクトリ構成の覚書です。
CLI化とかするならもっと考えないとですが、単純にpython main.pyみたいに起動するのであれば以下で事足りるかなと思いました。

ソース管理はgitを想定しています。
なので.gitignoreとREAD_ME.mdをつけています。
log出力はlogsフォルダにするつもりですが、ログファイルは管理対象外なので.gitkeepをおいて空ディレクトリを管理できるようにしています。

Pythonアプリケーションのディレクトリ構成

プロジェクトルート
├─プロジェクト名
│ ├─config
│ │ └─xxxx.json
│ ├─lib
│ │ ├─errors
│ │ │ └─application_exception.py
│ │ ├─logger
│ │ │ └─application_logger.py
│ │ └─utils
│ │   └─application_utils.py
│ ├─logs
│ │ ├─.gitkeep
│ │ └─application.log
│ ├─.env
│ ├─main.py
│ └─settings.py
├─tests
│ ├─test_xxxx.py
│ └─test_yyyy.py
├─.gitignore
├─requirements.txt
└─READ_ME.md

.gitignoreの書き方

最低限はこんな感じですが、githubとかでリポジトリを作成する際にデフォルトで作ってくれるものを参考にしたほうが良いと思います。
.gitignore

# 各開発ツールの隠しディレクトリ
.vscode

# Pythonのキャッシュ
__pycache__

# 一時ファイル
.log
.bak
.lnk

Pythonの所管

Pythonは本当に2系と3件の違いがうざったいですね。

ググっても実は2系でした、3系でしたみたいなオチが多くて

体系的に学べる一本筋が通ったサイトとなり本なりで

最後まで流したほうが学習速度は早いかと思います。

あと文字コード問題がつまずくポイントかなと。
マルチバイト文字とか考慮するととたんに初心者には難易度があがるような気がします。
まぁそのあたり考慮するようになったら初心者ではないかと思うのでさほど問題にはならないかもです。

あとAnaconda的なものが気に入らないぐらいで、非常に良く出来てた言語だと思います。

学習コスト低く人気の言語って言われるのに納得です。

フォローお願いします!

コメント

タイトルとURLをコピーしました