PyCharm 2024.3 ヘルプ

docstring で型を指定する

導入

あなたのコードを永久にデバッグし、今デバッグの過程でまた型情報を集めそして docstrings でこれらの型を指定することができます。

PyCharm は、実行時に型情報を収集し、型指定を定義することを可能にするインテンションアクションを提供します。

ただし、デバッガーを使用せずにパラメーターの種類を手動で指定することは可能です。

どちらのケースもサンプルセクションで調べています。

パラメーター型の指定

パラメーター型を指定するには、以下の一般的な手順に従います

  1. Ctrl+Alt+S を押して、エディター | 一般 | スマートキーに移動します。

    エディター設定のスマートキーページで型プレースホルダを挿入するチェックボックスを選択します。

  2. 関数名にキャレットを置き、Alt+Enter を押します。

  3. 表示されるインテンションアクションのリストで、ドキュメント文字列スタブを挿入するを選択します。PyCharm は、デバッガーセッション中に収集された型指定を使用して、選択した docstring 形式に従ってドキュメントスタブを作成します。

以降のすべての例では reStructuredText が使用されていますが、プレーンテキスト、Google、NumPy など、サポートされているドキュメント文字列の形式のいずれかを使用することもできます。詳細については、Python 統合ツールを参照してください。

サンプル

次のコードを考えてみましょう:

import math class SimpleEquation: def demo(self, a, b, c): d = math.sqrt(abs(b ** 2 - 4 * a * c)) root1 = (-b + d) / (2 * a) root2 = (-b - d) / (2 * a) print(root1, root2) SimpleEquation().demo(3, 2, 1)

ページ Python 統合ツールの docstring 形式として reStructuredText が選択されていると仮定します。

型を手動で指定する

  1. 関数名 (ここでは demo) にキャレットを置きます。推奨されるインテンションアクションはドキュメント文字列スタブを挿入するです。詳細については、「ドキュメントコメントを作成する」を参照してください。

    insert documentation string stub

    このインテンションをクリックして、ドキュメントコメントスタブを reStructuredText 形式で生成します。

    Docsting example
  2. 必要なパラメーターの型を手動で指定します。

    Docstring example

    ちなみに、この関数についてはクイックドキュメントを使用できます。関数名にキャレットを置き、Ctrl+Q を押すと、次のように表示されます。

    Docstrings in the quick documentation window

reStructuredText では、2 つの形式で型を指定することが可能です。

  • :param param_type param_name: parameter description (型記述はパラメーター記述と同じ行にあります)。

  • :type param_name: param_type (型の説明は別の行にあります)

両方の変種を以下に示します:

Using reStructuredText to specify types

デバッガーを使用して型を指定する

  1. Ctrl+Alt+S を押して、ビルド、実行、デプロイ | Python デバッガーに移動します。Python デバッガーページで、コードインサイトのためにランタイム情報を収集するチェックボックスを選択します。

  2. 関数呼び出しをデバッグして、インテンションアクションドキュメント文字列スタブを挿入するをもう一度使用してください。デバッグセッション中に取得された引数と戻り値に関する情報は、docstring に型アノテーションを事前設定するために使用されます。

    insert documentation string stub
  3. 結果を確認します。

    Docsting example

関連ページ:

スマートキー

このページを使用して、特定のスマートキーを有効または無効にし、自動的に呼び出すアクションを定義します。Home キーを押すとキャレットを最初の非空白文字に移動このチェックボックスが選択されている場合、を押すと、キャレットは現在の行の最初の非空白文字に配置されます。続いてを押すと、キャレットがスマートホームの位置から最初の列に移動して戻ります。空白行で End キーを押すとキャレットをインデント位置に移動このチェックボックスが選択されているとき、空の行でを押すと、キャレットはインデントで配置...

ドキュメントコメントを作成する

Python 関数のドキュメントコメントの作成:Python 関数のドキュメントコメントを作成するには文書化する関数の宣言の後にキャレットを置きます。三重引用符を開いて入力し、またはを押します。パラメーターと戻り値の意味のある説明を追加します。インテンションアクションを使用して Python 関数のドキュメントコメントを作成するにはキャレットを、文書化したい関数のどこかに置きます。を押して、利用可能なインテンションの動作を表示します。ドキュメント文字列スタブを挿入するを選択:PyCharm...

コードリファレンス情報

このセクションでは、シンボルの定義を表示し、ドキュメント参照を表示し、ビューパラメーター情報機能を使用する方法について説明します。パラメーター情報:パラメーター情報ポップアップには、メソッド呼び出しと関数呼び出しのパラメーターの名前が表示されます。PyCharm は、エディターで左括弧を入力するか、候補リストからメソッドを選択すると、1 秒 (1000 ミリ秒) 以内に、使用可能なすべてのメソッドシグネチャーを含むポップアップを自動的に表示します。ポップアップが閉じている場合、または IDE...

docstring のレガシー型構文

PyCharm は docstring を使用して Python で型を指定するためのレガシーアプローチをサポートします。その際、サポートされているフォーマットは次のとおりです。reStructuredText、NumPy、Google、必要な docstring 形式を選択するには、設定ダイアログの Python 統合ツールページを使用します。Python の docstrings の型構文は、どの標準でも定義されていません。PyCharm は次の表記を提案しています。現在のスコープで表示される...