PyCharm 2019.2ヘルプ

コード補完

このセクションでは、コーディングプロセスのスピードアップを可能にするコンテキスト対応コード補完のさまざまなテクニックについて説明します。

基本補完

基本コード補完を使用すると、可視性の範囲内でクラス、メソッド、およびキーワードの名前を完成させることができます。コード補完を起動すると、PyCharmはコンテキストを分析し、現在のキャレット位置から到達可能な選択肢を提案します(提案にはライブ・テンプレートも含まれます)。

基本コード補完がフィールド、パラメーター、または変数宣言の一部に適用されている場合、PyCharmは項目タイプに応じて可能な名前のリストを提案します。

基本コード補完を2回目に呼び出すと、クラス、関数、モジュール、変数の名前が表示されます。

基本補完を呼び出す

  1. 名前の入力を開始します。

  2. Ctrl+Space を押すか、メインメニューからコード | 補完 | 基本を選択してください。

    以下のイメージは、次の場合の基本的なコード補完を示しています。

    • メソッド:

      Completing Method

    • 辞書:

      Completing Dicts

    • Djangoテンプレート:

      Completing Filter

  3. 必要に応じて、Ctrl+Space を2回押します(または Ctrl+Alt+Spaceを押します)。

    これは、クラス、関数、モジュール、および変数の名前を表示します。

    Class name completion

スマート補完

スマートコード補完は候補リストをフィルタリングし、現在のコンテキストに適用可能なタイプのみを表示します。

スマートな補完を呼び出す

  1. 入力を開始します。

  2. Ctrl+Shift+Space を押すか、メインメニューからコード | 補完 | スマート入力を選択してください。

    現在のコンテキストに最も適した提案が強調表示されます。

    Smart type completion
  3. 必要に応じてもう一度 Ctrl+Shift+Space を押してください。

ヒッピー補完

ヒッピー補完は、目に見える範囲でテキストを分析し、現在のコンテキストから提案を生成する補完エンジンです。それは現在開いているファイルのどれからでもどんな単語でも完成させるのに役立ちます。

キャレットの文字列を既存の単語に展開する

  1. 最初の文字列を入力し、次のいずれかを実行します。

    • Alt+/ を押すか、コード | 補完 | 循環的に単語を展開を選択して、キャレットの前に一致する単語を検索します。

    • Shift+Alt+/ を押すか、コード | 補完 | 循環的に単語を展開 (後方)を選択して、キャレットの後ろにある他の開いているファイルで一致する単語を検索します。

    提案された最初の値が表示され、プロトタイプがソースコードで強調表示されます。

    Expand word
  2. 提案を受け入れるか、Alt キーを押しながら希望の単語が見つかるまで / を押し続けます。

    Hippie completion

後置コード補完

後置コード補完を使うと、コードを書くときの後方キャレットジャンプを減らすことができます。既にタイプされた式は、ドット、式のタイプ、およびそのコンテキストの後に入力する接尾辞に基づいて別のものに変換できます。

  • 使用可能なポストフィックステンプレートの全リストを表示するには、設定/環境設定ダイアログ(Ctrl+Alt+S)でエディター | 一般 | 後置補完に移動します。

  • 接尾辞テンプレートを展開するには、Tab , Spaceまたは Enter を選択します。

後置でステートメントを変換する

式を入力し、ドットの後に接尾辞を入力します(例: .if:)。

function m(arg) { arg.if }

最初の式は if ステートメントでラップされます。

function m(arg) { if (arg) { } }

特定の後置補完テンプレートを無効にするには、設定/環境設定ダイアログ(Ctrl+Alt+S)でエディター | 一般 | 後置補完を選択します。

接尾辞テンプレートを拡張するには、Tab , Spaceまたは Enter を選択できます。

たとえば、長いキーを短いキーに置き換えるか、適用可能な式の種類のリストを展開するなど、あらかじめ定義されたポストフィックステンプレートを編集できます。

コード補完設定を構成する

補完オプションを設定する

  1. 設定/環境設定ダイアログ(Ctrl+Alt+S)で、エディター | 一般 | コード補完を選択します。

  2. 以下を実施:

    • 候補リスト自動的に表示するには、入力時に候補を表示するチェックボックスを選択します。チェックボックスをオフにすると、コード補完を明示的に呼び出す必要があります。これは、Ctrl+Space を基本補完のために、または Ctrl+Shift+Space をスマートな補完のために押すことによって行われます。

      また、単一の候補を自動的に挿入にある補完タイプを選択するだけで、自動的に候補を挿入することもできます。

    • アルファベット順に候補並べ替えるには、関連性によってソートするのではなく、候補をアルファベット順にソートするチェックボックスを選択します。

      また、候補リストの右下隅にある the Sort Alphabetically button または the Sort by Relevance button をクリックすると、これらのモードを切り替えることができます。

    • 補完オプションを提案する際に大文字小文字を考慮するには、大/小文字を区別するを選択して、大文字と小文字を区別するか、すべての文字を大文字にするかを選択します。

    • 候補リストをスクロールするときに、その候補リスト内の各項目ごとに資料ポップアップを自動的に表示したい場合は、ドキュメントのポップアップを表示するオプションを選択します。右側のフィールドで、ポップアップが表示されるまでの遅延(ミリ秒)を指定します。

補完のヒントとテクニック

候補リストを絞り込む

単語の任意の部分(途中の文字からでも)を入力するか、ドット区切り記号の後にコード補完を呼び出すことによって、候補リストを絞り込むことができます。PyCharmはどんな位置にも入力した文字を含む提案を表示します。

これはワイルドカードの使用を不要にします:

codeCompletionWildcard.png

CamelCaseまたはsnake_caseの名前の場合は、最初の文字のみを入力します。PyCharmは最初の文字を自動的に認識して一致させます。

提案を受け入れる

次のいずれかの方法で、リストから提案を受け入れることができます。

  • Enter を押すか、リスト項目をダブルクリックして、キャレットの左側に挿入します。

  • Tab を押して、キャレットから右にある文字を置き換えます。

  • Ctrl+Shift+Enter を使用して、現在のコード構成を構文上正しいものにします(括弧のバランス、欠落している中括弧とセミコロンの追加など)。

特定のキーを使用して選択した補完候補を挿入することもできます。設定/環境設定ダイアログ(Ctrl+Alt+S)でエディター | 一般 | コード補完を選択し、スペース、ドット、その他のコンテキスト依存キーを押して選択した候補を挿入するオプションを選択します。これらのキーは言語、あなたの文脈などに依存します。

リファレンスを表示する

  • 候補リストの項目を選択するときに Ctrl+Shift+I を押すと、定義を使用できます。

    Quick definition

  • 候補リストの項目を選択するときに Ctrl+Q を押すと、クイックインフォメーションビューを使用できます。

    Quick documentation

コード階層を表示する

候補リストからエントリを選択すると、コード階層を表示できます。

  • Ctrl+H : ビュー型階層

  • Ctrl+Shift+H : メソッドの階層を表示します。

機械学習支援コード補完を使用する

機械学習モデルを利用して、候補リストで最も適切なアイテムを上位にランク付けできます。

これを行うには、設定/環境設定ダイアログ(Ctrl+Alt+S)でエディター | 一般 | コード補完に移動し、機械学習完了ランキングオプションを有効にします。

トラブルシューティング

コード補完が機能しない場合は、次のいずれかの理由が考えられます。

  • 省電力モードがオンです(ファイル | 省電力モード)。これをオンにすると、エラー強調表示、オンザフライインスペクション、コード補完などのバックグラウンド操作を排除してラップトップの電力消費を最小限に抑えられます。

  • ファイルはコンテンツ・ルートに存在しないため、コード補完に必要なクラス定義とリソースを取得しません。

  • 補完候補リストに表示するクラスと関数を含むファイルは、プレーンテキストファイルとしてマークされています。

  • 補完候補リストに表示する関数を含む外部ライブラリーは、依存関係またはグローバルライブラリーとして追加されません。

最終更新日: 2019年9月13日

関連ページ:

ライブ・テンプレート

ライブテンプレートを使用することで、頻繁に使用される構造をコードに挿入できます: 例:ループ、条件、さまざまな宣言、またはprintステートメントコードスニペットを拡張するには、対応するテンプレートの略語を入力して を押します。 を押し続けると、テンプレート内のある変数から次の変数にジャンプします...

ファイルタイプの関連付けを設定する

PyCharmで認識されないファイルタイプ(社内で開発された独自のファイルタイプなど)を使用している場合や、サポートされていない言語でコーディングする必要がある場合は、カスタムファイルタイプを作成できます。キーワード、コメント、数字などの強調表示スキームを定義することによって、IDEがファイルを解析...

コードリファレンス情報

このセクションでは、シンボルの定義を表示し、ドキュメント参照を表示し、ビューパラメータ情報機能を使用する方法について説明します。定義:PyCharmでは、タグ、クラス、フィールド、メソッド、関数などのシンボルがプロジェクトでどのように定義されているかを確認することができます。この目的のために、IDE...

自動インポート

インポートされていないクラスを参照すると、PyCharmはこのファイルを見つけてインポートのリストに追加できます。設定に応じて、単一のクラスまたはパッケージ全体をインポートできます。import文がimportsセクションに追加されますが、キャレットは現在の位置から移動せず、現在の編集セッションは中...