スーパークラスの抽出
スーパークラスの抽出リファクタリングを使用すると、既存のクラスのスーパークラスを作成できます。
元のクラスのメンバーをスーパークラスに移動できます。メソッドの場合、スーパークラスでメソッドを抽象として宣言して、メソッド宣言のみを転送できますが、実装は転送できません。その結果、スーパークラスと、スーパークラスを継承する元のクラスが作成されます。
スーパークラスを抽出する
エディターのクラス内にキャレットを配置します。
メインメニューから
を選択するか、コンテキストメニューから を選択します。スーパークラスの抽出ダイアログで、以下を指定します。
スーパークラスを抽出フィールドの新しいスーパークラスの名前。
新しいスーパークラスがディレクトリへのメンバーでスーパークラスを抽出フィールドに格納されるターゲットファイル。
スーパークラスを抽出のスーパークラスに含めるクラスのメンバーを選択します。
スーパークラスのメソッドを抽象化する場合は、abstract にするチェックボックスを選択します。
スーパークラスを抽出フィールドには、スーパークラスが抽出されるクラスの名前が表示されます。読み取り専用です。
続行する前に、「プレビュー」をクリックしてリファクタリング結果を確認します。問題が発生した場合は、PyCharm が通知します。
リファクタリングを続行するには、抽出をクリックします。PyCharm はスーパークラスを作成し、それを継承するように元のクラスを変更します。
関連ページ:

メソッドの抽出
メソッドの抽出リファクタリングを使用すると、グループ化できるコードフラグメントを取得し、別のメソッドに移動して、古いコードをメソッドの呼び出しに置き換えることができます。メソッドを抽出するとき、変数を確認する必要があります。出力変数が 1 つの場合、抽出されたメソッドの戻り値として使用されます。複数の出力変数がある場合、メソッドの抽出リファクタリングが適用されず、エラーメッセージが表示されます。この場合、メソッドの抽出を動作させるためのいくつかの回避策があります。例: すべての出力値を含む特別な...

変数の抽出 / 導入
理解しにくい式に遭遇した場合、またはコード内の複数の場所で式が重複している場合、変数の導入リファクタリングを使用すると、そのような式の結果またはその一部を、より複雑ではなく理解しやすい別の変数に配置することで、これらの問題に対処できます。さらに、コードの重複も削減されます。変数の導入リファクタリングを使用して、可変個引数を新しいスライス変数に抽出できます。その場で変数を抽出するエディターで変数に置き換える式を選択します。それを自分で行うことも、PyCharm のスマート表現選択機能を使うことも...