PyCharm 2019.3ヘルプ

シグネチャーの変更

シグネチャーの変更リファクタリングは、関数シグネチャーに適用できるいくつかの異なる変更を組み合わせます。このリファクタリングを使用して、次のことができます。

  • 関数名を変更する

  • パラメーターの追加、削除、並べ替え

  • パラメータにデフォルト値を割り当てます

関数のシグネチャーを変更すると、PyCharmは関数のすべての使用箇所を検索し、変更、反映、変更を安全に修正できる関数のすべての呼び出し、実装、および置き換えを置き換えます。

サンプル

# This function will be renamed: def fibonacci(n): a, b = 0, 1 while b < n: print(b) a, b = b, a+b n = int(input("n = ")) fibonacci(n)
# Function with the new name: def fibonacci_numbers(n): a, b = 0, 1 while b < n: print(b) a, b = b, a+b n = int(input("n = ")) fibonacci_numbers(n)

新しいパラメータのデフォルト値と伝播

関数に追加された新しいパラメータごとに、以下を指定できます。

  • デフォルト値(または式)(デフォルト値フィールド)。

また、導入したパラメーターを、シグネチャーを変更する関数を呼び出す関数に伝達することもできます。リファクタリングの結果は、デフォルト値を指定するかどうか、および伝播を使用するかどうかによって異なります。

伝搬 : シグネチャーを変更している関数を呼び出す関数には、新しいパラメータを伝播できます。そのような場合、一般に、呼び出し関数のシグネチャーはそれに応じて変わります。ただし、これらの変更は新しいパラメータに設定されているデフォルト値にも依存します。

デフォルト値 : 通常、これは関数呼び出しに追加される値です。新しいパラメーターが呼び出し元の関数に伝達されない場合、そのような関数内の呼び出しでもこの値が使用されます。伝播が使用される場合、この値は呼び出し元の関数内の関数呼び出しに影響しません。

関数のシグネチャーを変更する

  1. リファクタリングする関数の名前にキャレットを置きます。

  2. Ctrl+F6を押します。または、メインメニューまたはコンテキストメニューからリファクタリング | シグネチャーの変更を選択します。

  3. シグネチャーの変更ダイアログで、必要に応じて関数シグネチャーに必要な変更を加えます。

    • 関数名を変更します。名前を変更するには、名前フィールドのテキストを編集します。

    • 関数のパラメータを管理します。パラメータを設定するには、パラメーターエリアのテーブルとボタンを使用します。

      • 新しいパラメーターを追加するには、The Add button をクリックし、対応するテーブル行で新しいパラメーターのプロパティを指定します。

      • パラメータを削除するには、任意の行を選択して The Remove buttonをクリックします。

      • パラメーターの順序を変更するには、The Up icon および The down iconをクリックします。例:特定のパラメーターをリストの最初に配置する場合は、そのパラメーターに対応する行のセルのいずれかをクリックし、必要な回数 The Up icon をクリックします。

      • パラメーターのタイプ、名前、またはデフォルト値を変更するには、パラメーターのテーブル(およびパラメーターフィールド)で必要な更新を行います。

  4. リファクタリングをクリックします。

  5. リファクタリングの前に予想される変更を確認して調整するには、プレビューをクリックします。

最終更新日: 2020年1月14日