docstring で型を指定する
導入
あなたのコードを永久にデバッグし、今デバッグの過程でまた型情報を集めそして docstrings でこれらの型を指定することができます。
PyCharm は、実行時に型情報を収集し、型指定を定義することを可能にするインテンションアクションを提供します。
ただし、デバッガーを使用せずにパラメーターの種類を手動で指定することは可能です。
どちらのケースもサンプルセクションで調べています。
パラメーター型の指定
パラメーター型を指定するには、以下の一般的な手順に従います
Ctrl+Alt+S を押して、
に移動します。エディター設定のスマートキーページで型プレースホルダを挿入するチェックボックスを選択します。
関数名にキャレットを置き、Alt+Enter を押します。
表示されるインテンションアクションのリストで、ドキュメント文字列スタブを挿入するを選択します。PyCharm は、デバッガーセッション中に収集された型指定を使用して、選択した docstring 形式に従ってドキュメントスタブを作成します。
以降のすべての例では reStructuredText が使用されていますが、プレーンテキスト、Google、NumPy など、サポートされているドキュメント文字列の形式のいずれかを使用することもできます。詳細については、Python 統合ツールを参照してください。
サンプル
次のコードを考えてみましょう:
ページ Python 統合ツールの docstring 形式として reStructuredText が選択されていると仮定します。
型を手動で指定する
関数名 (ここでは
demo
) にキャレットを置きます。推奨されるインテンションアクションはドキュメント文字列スタブを挿入するです。詳細については、「ドキュメントコメントを作成する」を参照してください。このインテンションをクリックして、ドキュメントコメントスタブを
reStructuredText
形式で生成します。必要なパラメーターの型を手動で指定します。
ちなみに、この関数についてはクイックドキュメントを使用できます。関数名にキャレットを置き、Ctrl+Q を押すと、次のように表示されます。
reStructuredText では、2 つの形式で型を指定することが可能です。
:param param_type param_name: parameter description
(型記述はパラメーター記述と同じ行にあります)。:type param_name: param_type
(型の説明は別の行にあります)
両方の変種を以下に示します:
デバッガーを使用して型を指定する
Ctrl+Alt+S を押して、Python デバッガーページで、コードインサイトのためにランタイム情報を収集するチェックボックスを選択します。
に移動します。関数呼び出しをデバッグして、インテンションアクションドキュメント文字列スタブを挿入するをもう一度使用してください。デバッグセッション中に取得された引数と戻り値に関する情報は、docstring に型アノテーションを事前設定するために使用されます。
結果を確認します。
関連ページ:
スマートキー
このページを使用して、特定のスマートキーを有効または無効にし、自動的に呼び出すアクションを定義します。Home キーを押すとキャレットを最初の非空白文字に移動このチェックボックスが選択されている場合、を押すと、キャレットは現在の行の最初の非空白文字に配置されます。続いてを押すと、キャレットがスマートホームの位置から最初の列に移動して戻ります。空白行で End キーを押すとキャレットをインデント位置に移動このチェックボックスが選択されているとき、空の行でを押すと、キャレットはインデントで配置...
ドキュメントコメントを作成する
Python 関数のドキュメントコメントの作成:Python 関数のドキュメントコメントを作成するには文書化する関数の宣言の後にキャレットを置きます。三重引用符を開いて入力し、またはを押します。パラメーターと戻り値の意味のある説明を追加します。インテンションアクションを使用して Python 関数のドキュメントコメントを作成するにはキャレットを、文書化したい関数のどこかに置きます。を押して、利用可能なインテンションの動作を表示します。ドキュメント文字列スタブを挿入するを選択:PyCharm...
コードリファレンス情報
このセクションでは、シンボルの定義を表示し、ドキュメント参照を表示し、ビューパラメーター情報機能を使用する方法について説明します。パラメーター情報:パラメーター情報ポップアップには、メソッド呼び出しと関数呼び出しのパラメーターの名前が表示されます。PyCharm は、エディターで左括弧を入力するか、候補リストからメソッドを選択すると、1 秒 (1000 ミリ秒) 以内に、使用可能なすべてのメソッドシグネチャーを含むポップアップを自動的に表示します。ポップアップが閉じている場合、または IDE...
docstring のレガシー型構文
PyCharm は docstring を使用して Python で型を指定するためのレガシーアプローチをサポートします。その際、サポートされているフォーマットは次のとおりです。reStructuredText、NumPy、Google、必要な docstring 形式を選択するには、設定ダイアログの Python 統合ツールページを使用します。Python の docstrings の型構文は、どの標準でも定義されていません。PyCharm は次の表記を提案しています。現在のスコープで表示される...