Pythonの-mってなんだろう

今年のテーマは「おまじないを増やさない、おまじないを理解する」です。Python-mといえば、python -m venv venv とかで使うオプションですが、これってどういう意味なんだろう。

sys.path から指定されたモジュール名のモジュールを探し、その内容を main モジュールとして実行します。

公式ドキュメントより引用。

なるほど。ついでにStackoverflowからも引用。

 python -m pdb

は、ざっくり以下のコードと等しい。

python /usr/lib/python3.5/pdb.py

引用ここまで。モジュールをスクリプトとして実行するオプションで-mはモジュールの意だったらしい。ふへ。

ちなみに -c をつけるとカレントディレクトリがsys.pathに追加されるらしい。しかもsys.path の先頭に追加されるのでトップレベルモジュールとしてimportできるとのこと。

Gitの-mはメッセージ。-mといってもいろんな-mがある。まだまだPythonのことをなんにも知らないなぁ。もっと知りたいなぁ。。。Pythonのこと。。。

参考リンク

docs.python.jp

stackoverflow.com