備忘録として
環境
- ホストOS: indows11
- ゲストOS: WSL2 Ubuntu20.04
- VScode1.63.2
- Python3.10.1
手順
- 拡張機能「Python Docstring Generator」をインストールしてVScodeを再起動します
- クラスや関数宣言箇所の直下で
ctrl + shift + 2
と入力するとdocstringが生成されます
※ """
(ダブルクォーテーション3つ)でも生成できますが、入力の手間を考えるとショートカットキーを使う方が良いでしょう
あとは[sumary]や[description]欄に適宜関数や引数の情報を記述していきましょう。
備考
「Python Docstring Generator」ではdocstringに4通りのスタイルが利用可能です。
① docblockr
標準的な形式です
② google
docblockrをよりシンプルにした形です。個人的にはこれが好みです
③ sphinx
パラメータの名前と型が縦に並んでいます。どうしてもdocstringが縦長になるので可読性が低くなります。
④ numpy
②と③のあいの子みたいな感じです。
どれを使うか
関数の動作に影響しないので、個人開発では好み・チーム開発ではチームのルールに合わせれば良いでしょう。
私はgoogleがシンプルで好みです。(デフォルトの設定もgoogleになっています)
注意点
Python for VSCodeという拡張機能が有効になっている場合、戻り値の型が指定されているとdocstringが正しく表示されません。
詳しい原因は分かりませんがPython for VSCodeが有効化されていると、シンタックスハイライトに影響するようです。
差支えなければ無効にするかアンインストールしてしまってよいでしょう。
(レビューも低評価が多いですね...)
参考資料
VSCodeの拡張機能でPython docstringを生成する
Python for VSCode - Visual Studio Marketplace
VSCode Python Docstring Generator
pythonシンタックスハイライト崩れ問題 in VSCode
[python] syntax highlighting breaks on function annotations #138