Visual Studio での Python のオプション
Visual Studio では、Python 開発向け対話型開発環境 (IDE) の設定がサポートされており、 好みに応じてオプションを設定して、特定の開発環境のニーズを満たすことができます。 この記事では、一般的なレイアウトと動作、デバッグ、診断、および高度な Python 言語機能に使用できるオプションについて説明します。
Python オプションの場所
Python の構成設定は、Visual Studio ツール バーの [ツール]>[オプション] に用意されています。 [オプション] ダイアログには、[Python] タブ内の大部分の Python 設定が表示されます。
[オプション] ダイアログでは、[テキスト エディター]>[Python] にその他の Python 設定が一覧表示されます。 スクロール バー、タブ、書式設定のオプションに加えて、全般設定と詳細設定があります。 その他の設定は、[テキスト エディター] 設定グループの [環境]>[フォントと色] で使用できます。
以前のバージョンの Visual Studio では、Python で使用可能なすべてのオプションを表示するために [オプション] ダイアログで [すべての設定を表示] を選択しなければいけない場合があります。
Note
[オプション] ダイアログには、開発中であり、この記事で説明していない機能の [試験段階] タブまたはグループが表示される場合があります。 詳細については、Microsoft ブログの Python エンジニアリングについての記事を参照してください。
Python の固有オプション
[ツール]>[オプション]>[Python] では、インタラクティブ ウィンドウ、conda 環境、デバッグなど、一般的な環境向けの Python 固有のオプションを設定できます。
Python の一般的オプション
[ツール]>[オプション]>[Python]>[全般] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
仮想環境の作成時に出力ウィンドウを表示する | 有効 | 出力ウィンドウが表示されないようにするには、オフにします。 |
パッケージのインストールまたは削除時に出力ウィンドウを表示する | 有効 | 出力ウィンドウが表示されないようにするには、オフにします。 |
環境を作成するよう通知バーを表示する | オン | このオプションを設定した場合、requirements.txt ファイルまたは environment.yml ファイルが含まれるプロジェクトをユーザーが開くと、Visual Studio では、デフォルトのグローバル環境を使用する代わりに、仮想環境または Conda 環境を作成する提案を含む情報バーが表示されます。 |
パッケージをインストールするよう通知バーを表示する | オン | このオプションを設定した場合、デフォルトのグローバル環境を使わない requirements.txt ファイルを含むプロジェクトをユーザーが開くと、Visual Studio では、ファイルの要件と現在の環境にインストールされているパッケージの比較を行います。 足りないパッケージがあると、それらの依存関係のインストールを求めるメッセージが表示されます。 |
通知バーを表示してテスト フレームワークを構成する | オン | このオプションを設定した場合、テストを含む可能性があるがテスト フレームワークが有効になっていない Python プロジェクト内のファイルが Visual Studio によって検出されると、pytest または unittest を有効にするように求めるメッセージが表示されます。 |
常に管理者として pip を実行する | Off | すべての環境で、pip install およびそれに類似するパッケージ マネージャーの操作を、常に管理特権に昇格させます。 パッケージのインストール時に、環境が c:\Program Files などのファイル システムの保護領域にある場合、管理者特権を求めるメッセージが表示されます。 そのメッセージでは、その 1 つの環境に対してのみ install コマンドを常に昇格させることを選択できます。 詳細については、[パッケージ] タブを参照してください。 |
オプション | Default | 説明 | 可用性 |
---|---|---|---|
仮想環境の作成時に出力ウィンドウを表示する | 有効 | 出力ウィンドウが表示されないようにするには、オフにします。 | Visual Studio 2019 以前 |
パッケージのインストールまたは削除時に出力ウィンドウを表示する | 有効 | 出力ウィンドウが表示されないようにするには、オフにします。 | Visual Studio 2019 以前 |
環境を作成するよう通知バーを表示する | オン | このオプションを設定した場合、requirements.txt ファイルまたは environment.yml ファイルを含むプロジェクトを開くと、Visual Studio は各種提案を含む情報バーを表示します。 デフォルトのグローバル環境を使用する代わりに、仮想環境または conda 環境を作成できます。 | Visual Studio 2019 以降 |
パッケージをインストールするよう通知バーを表示する | オン | このオプションを設定した場合、デフォルトのグローバル環境を使わない requirements.txt ファイルを含むプロジェクトをユーザーが開くと、Visual Studio では、ファイルの要件と現在の環境にインストールされているパッケージの比較を行います。 足りないパッケージがあると、それらの依存関係のインストールを求めるメッセージが表示されます。 | Visual Studio 2019 以降 |
常に管理者として pip を実行する | Off | すべての環境で、pip install およびそれに類似するパッケージ マネージャーの操作を、常に管理特権に昇格させます。 パッケージのインストール時に、環境が c:\Program Files などのファイル システムの保護領域にある場合、管理者特権を求めるメッセージが表示されます。 そのメッセージでは、その 1 つの環境に対してのみ install コマンドを常に昇格させることを選択できます。 詳細については、[パッケージ] タブを参照してください。 |
Visual Studio 2019 以前 |
初回使用時に完了 DB を自動的に生成する | オン | このオプションを使用するコードを記述すると、ライブラリのデータベースの入力候補が優先されます。 詳細については、IntelliSense タブに関するページをご覧ください。 | - Visual Studio 2017 バージョン 15.5 以前 - IntelliSense データベースで使用する場合の Visual Studio の新しいバージョン |
システム全体の PYTHONPATH 変数を無視する | 有効 | 既定では PYTHONPATH は無視されます。これは、Visual Studio では環境とプロジェクトに検索パスを指定するためのより直接的な手段が提供されるためです。 詳細については、「Visual Studio の検索パスでの Python フォルダーの使用」を参照してください。 | Visual Studio 2019 以前 |
リンクされたファイルの追加時に検索パスを更新する | 有効 | 設定時にリンクされたファイルをプロジェクト更新ファイルの検索パスに追加することで、IntelliSense にその入力候補データベースのリンクされたファイルのフォルダーの内容が含まれるようになります。 そのような内容を入力候補データベースから除外するには、このオプションをオフにします。 | Visual Studio 2019 以前 |
インポートしたモジュールが見つからない場合に警告する | 有効 | インポートしたモジュールを現在使用できないが、コードの操作に影響がないことがわかっている場合は、このオプションをオフにして警告を非表示にしてください。 | Visual Studio 2019 以前 |
不整合なインデントを次の形式で報告する | Warnings | Python インタープリターは範囲の決定のために正しいインデントを非常に重視するため、既定では Visual Studio はコード エラーを示す可能性がある不整合なインデントを検出すると警告します。 [エラー] に設定してさらに厳密にすると、該当するケースでプログラムが終了します。 この動作を完全に無効にするには、[Don't]\(しない\) を選択します。 | Visual Studio 2019 以前 |
アンケート/ニュースを確認する | 1 週間に 1 回 | Python 関連のアンケートやニュースの項目 (ある場合) を含む Web ページを含むウィンドウを Visual Studio が開く頻度を設定します。 オプションは [Never]、[1 日 1 回]、[1 週間に 1 回]、および [Once a month]\(1 か月に 1 回\) です。 | Visual Studio 2017 以前 |
[永続的に表示されないすべてのダイアログをリセットする] | 該当なし | ダイアログ ボックスに応じて、[Don't show me this again]\(今後このダイアログを表示しない\) などのオプションがあります。 これらのオプションをオフにして、ダイアログを再表示するには、このボタンを使用してください。 | Visual Studio 2019 以前 |
Conda 環境オプション
[ツール]>[オプション]>[Python]>[Conda] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
Conda 実行可能ファイル パス | (空白) | Python ワークロードに含まれるデフォルトの Miniconda のインストールに頼るのではなく、conda.exe 実行可能ファイルの正確なパスを指定します。 ここで別のパスを指定した場合、既定のインストールおよびレジストリで指定されている他のすべての conda.exe 実行可能ファイルより、その指定が優先されます。 新しいバージョンの Anaconda または Miniconda を手動でインストールする場合、または既定の 64 ビット ディストリビューションではなく 32 ビット ディストリビューションを使用する場合に、この設定を変更することがあります。 |
デバッグのオプション
[ツール]>[オプション]>[Python]>[デバッグ] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
エラーが存在している場合、実行する前にメッセージを表示する | オン | このオプションを設定すると、エラーが含まれるコードを実行した際に、確認のメッセージが表示されます。 警告を無効にするには、このオプションをオフにします。 |
プロセスが異常終了した場合に入力を待機する プロセスが正常終了した場合に入力を待機する |
オン (両方) | Visual Studio から起動された Python プログラムは、独自のコンソール ウィンドウで実行されます。 既定では、プログラムの終了方法に関係なく、プログラムの終了前に、ウィンドウがキーの入力を待機します。 このプロンプトを削除し、自動的にウィンドウを閉じるには、いずれかまたは両方のオプションをオフにします。 |
デバッグ出力ウィンドウへの tee プログラム出力 | 有効 | 個別のコンソール ウィンドウと Visual Studio 出力ウィンドウの両方にプログラムを表示します。 個別のコンソール ウィンドウにのみ出力を表示する場合は、このオプションをオフにします。 |
終了コード 0 の SystemExit 例外を中断する | Off | 設定されていると、この例外でデバッガーが停止します。 オフにすると、デバッガーは中断せずに終了します。 |
Python 標準ライブラリのデバッグを有効にする | Off | これにより、デバッグ中に標準ライブラリのソース コードに介入できるようになりますが、デバッガーが開始するまでの時間が長くなります。 |
関数の戻り値を表示 | オン | 関数の戻り値を [ローカル] ウィンドウに表示した後、デバッガーで関数の呼びしをステップ オーバーします (F10) |
変数を表示する | オン | 表示する 4 つの変数グループと、その表示の書式を設定する方法 (グループ、非表示、インライン) を表示します。 - クラス: デフォルトは "グループ" です - 保護: デフォルトは "インライン" です - 関数: デフォルトは "グループ" です - 特殊: デフォルトは "グループ" です |
オプション | Default | 説明 | 可用性 |
---|---|---|---|
エラーが存在している場合、実行する前にメッセージを表示する | オン | このオプションを設定すると、エラーが含まれるコードを実行した際に、確認のメッセージが表示されます。 警告を無効にするには、このオプションをオフにします。 | Visual Studio 2019 以前 |
プロセスが異常終了した場合に入力を待機する プロセスが正常終了した場合に入力を待機する |
オン (両方) | Visual Studio から起動された Python プログラムは、独自のコンソール ウィンドウで実行されます。 既定では、プログラムの終了方法に関係なく、プログラムの終了前に、ウィンドウがキーの入力を待機します。 このプロンプトを削除し、自動的にウィンドウを閉じるには、いずれかまたは両方のオプションをオフにします。 | Visual Studio 2019 以前 |
デバッグ出力ウィンドウへの tee プログラム出力 | 有効 | 個別のコンソール ウィンドウと Visual Studio 出力ウィンドウの両方にプログラムを表示します。 個別のコンソール ウィンドウにのみ出力を表示する場合は、このオプションをオフにします。 | Visual Studio 2019 以前 |
終了コード 0 の SystemExit 例外を中断する | Off | 設定されていると、この例外でデバッガーが停止します。 オフにすると、デバッガーは中断せずに終了します。 | Visual Studio 2019 以前 |
Python 標準ライブラリのデバッグを有効にする | Off | これにより、デバッグ中に標準ライブラリのソース コードに介入できるようになりますが、デバッガーが開始するまでの時間が長くなります。 | Visual Studio 2019 以降 |
関数の戻り値を表示 | オン | 関数の戻り値を [ローカル] ウィンドウに表示した後、デバッガーで関数の呼びしをステップ オーバーします (F10) | Visual Studio 2019 以前 |
レガシ デバッガーを使用 | "オフ" | 既定で従来のデバッガーを使用するよう Visual Studio に指示します。 詳しくは、デバッグに関する記事の「レガシ デバッガーを使用します」をご覧ください。 | Visual Studio 2019 のみ |
分析オプション
[ツール]>[オプション]>[Python]>[分析] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
診断モード | ファイルのみを開く | 言語サーバーで問題を分析するコード ファイルを指定します ([ワークスぺース] や [開いているファイルのみ] など)。 |
ログ レベル | 情報 | 言語サーバーで実行するログ記録のレベルを指定します。 提供される情報のレベルを上げるには、[エラー]、[警告]、[情報]、[トレース] などのログ記録レベルを選択できます。 |
型チェック | "オフ" | 実行する分析の型チェック レベルを指定します。 - オフ: 未解決のインポート/変数の診断を生成しますが、型チェック分析は行いません - 基本: 非型 ([オフ] レベルのすべてのルール) および基本型チェック関連ルールを使用します - Strict: (厳密): すべての型チェック ルールを最も重大度が高いエラーに使用します。これには、[オフ] レベルと [基本] レベルのすべてのルールが含まれます |
インポート形式 | Absolute | モジュールを自動インポートするときのデフォルトの形式を定義します。[Absolute] (絶対) 形式や [Relative] (相対) 形式を含みます。 |
スタブ パス | <空> | カスタム型スタブを含むディレクトリへのパスを指定します。 各パッケージの型スタブ ファイルは、それぞれ固有のサブディレクトリ内にあると想定されます。 |
検索パス | <空> | インポート解決の検索パスを指定します。 文字列として指定したパス (["path 1","path 2"] のように複数のパスがある場合はコンマで区切られたパス) を検索対象にします。 |
Typeshed パス | <空> | バンドルされたバージョンではなく、カスタム Typeshed ファイルを使用する Visual Studio のパスを指定します。 |
'src' などの一般的な検索パスを自動的に追加する | オン | src などの定義済みの名前に基づいて検索パスを自動的に追加するかどうかを指定します。 |
Index installed third party libraries and user files for language features such as auto-import, add import, workspace symbols and etc. (自動インポート、インポートの追加、ワークスペース シンボルなどの言語機能用に、インストール済みサード パーティ製ライブラリとユーザー ファイルのインデックスを作成する) | "オフ" | 言語サーバーの起動時にユーザー ファイルとインストール済みサードパーティ ライブラリのインデックスを作成するかどうかを指定します。 インデックスには、自動インポート、クイック修正、オート コンプリートなど、より完全な機能シンボルのセットが用意されています。 - このオプションを設定すると、インストール済みパッケージの最上位のシンボル (package/__init__.py のすべてのシンボルなど) に加え、最大 2,000 個のユーザー ファイルについてすべてのシンボルのインデックスを作成できます。 - このオプションを選択しない場合、Visual Studio には、エディターで以前に開かれたかまたは読み込まれたファイルで参照または使用されていたシンボルが表示されます。 |
診断オプション
[ツール]>[オプション]>[Python]>[診断] では、次のオプションを使用できます。
オプション | Default | 説明 | 可用性 |
---|---|---|---|
分析ログを含める | 有効 | 診断をファイルに保存するとき、またはボタンを使用して診断をクリップボードにコピーするときに、インストールされている Python 環境の分析に関連する詳細なログが含まれます。 これを使用すると、生成されるファイルのサイズが非常に大きくなる可能性がありますが、多くの場合 IntelliSense の問題を診断する際に、このオプションが必要となります。 | Visual Studio 2019 以前 |
[診断をファイルに保存] | 該当なし | ファイル名の入力を要求し、テキスト ファイルにログを保存します。 | Visual Studio 2019 以前 |
[診断をクリップボードにコピー] ボタン | 該当なし | ログ ファイル全体をクリップボードにコピーするには、このオプションを選択します。 ログのサイズによっては、操作に時間がかかる場合があります。 | Visual Studio 2019 以前 |
言語サーバーのオプション
[ツール]>[オプション]>[Python]>[言語サーバー] では、次のオプションを使用できます。
オプション | Default | 説明 | 可用性 |
---|---|---|---|
Typeshed からの入力候補を無効にする | Off | Visual Studio の IntelliSense では、通常、バンドルされたバージョンの Typeshed (一連の .pyi ファイル) を使用して、Python 2 と Python 3 の両方に対する標準ライブラリおよびサード パーティ製ライブラリの型ヒントが検索されます。 このオプションを設定すると、バンドルされた TypeShed の動作が無効になります。 | Visual Studio 2019 以前 |
カスタム Typeshed パス | (空白) | 設定した場合、Visual Studio では、バンドルされたバージョンではなく、このパスにある Typeshed ファイルが使われます。 [Typeshed からの入力候補を無効にする] が設定されている場合は無視されます。 | Visual Studio 2019 以前 |
対話型ウィンドウ オプション
[ツール]>[オプション]>[Python]>[インタラクティブ ウィンドウ] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
スクリプト | 該当なし | すべての環境のインタラクティブ ウィンドウに適用される、スタートアップ スクリプト向け一般的フォルダーを指定します。 詳細については、「スタートアップ スクリプト」を参照してください。 注: この機能は、お使いのバージョンの Visual Studio では動作しない可能性があります。 |
上下の矢印で履歴を参照する | 有効 | 矢印キーを使用して対話型ウィンドウの履歴を移動することができます。 代わりに、矢印キーを使用して対話型ウィンドウの出力内を移動するには、この設定をオフにします。 |
完了モード | 関数呼び出しなしで式のみを評価する | インタラクティブ ウィンドウの式で利用可能なメンバーを決定するプロセスでは、現在未完了の式の評価が必要となる場合があります。これにより、副作用が発生したり、関数が複数回呼び出されたりする可能性があります。 既定の設定である [関数呼び出しなしで式のみを評価する] は関数を呼び出すと思われる式は除外されますが、その他の式は評価します。 たとえば、a.b ステートメントは評価されますが、a().b ステートメントは評価されません。 [常に式を評価しない] では修正候補のために標準の IntelliSense エンジンのみを使用するため、あらゆる副作用を防ぐことができます。 [すべての式を評価する] は副作用に関係なく、修正候補の取得のためにすべての式を評価します。 |
スタティック分析の修正候補を非表示にする | Off | 設定すると、式の評価によって取得される修正候補のみが表示されます。 完了モードの値 [常に式を評価しない] と組み合わせると、対話型ウィンドウに有用な入力候補が表示されません。 |
Python のテキスト エディター オプション
[テキスト エディター]>[Python] には、スクロール バー、タブ、書式設定のオプションに加えて、一般的な設定と詳細設定があります。
Python エディターの一般的なオプション
[ツール]>[オプション]>[テキスト エディター]>[Python]>[全般] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
自動メンバー表示 | オン | コード ステートメントを完了するためにメンバーを自動的に一覧表示するには、このオプションを設定します。 |
メンバーの詳細を非表示 | オン | [自動メンバー表示] オプションを有効にして、このオプションを設定すると、入力候補内に高度なメンバーが表示されません。 高度なメンバーとは、他のメンバーよりも使用頻度の低いメンバーです。 |
パラメータ情報 | オン | このオプションを設定して、マウス ポインターでパラメーターをポイントすると、項目定義やドキュメントへのリンクなどの詳細情報が表示されます。 |
仮想空白を使用 | オン | 設定すると、コードの各行の末尾にスペースが挿入されます。 コードの横に一貫してコメントを入れる場合は、このチェック ボックスをオンにします。 列の選択モードで仮想空白モードが有効になります。 仮想空白モードを有効にしないと、挿入ポイントは行の末尾から次の行の先頭文字に直接移動します。 注: このオプションは、[テキスト エディター]>[すべての言語]>[全般]>[仮想空白を使用] のグローバル設定の影響を受けます。 グローバル設定が有効になっていない場合、このオプションは言語レベルでは有効にできません。 |
右端で折り返す | "オフ" | このオプションを設定すると、エディターのビューポートの幅に合わせて長いコード行を折り返すことができます。 |
右端の折り返しの記号を表示する | "オフ" | [右端で折り返す] オプションを有効にして、このオプションを設定すると、ビジュアル グリフが表示されます。 |
行番号 | "オフ" | このオプションを設定すると、コード行ごとにエディターの左余白に行番号が表示されます。 |
シングル クリックでの URL ナビゲーションを有効にする | オン | 設定すると、URL を 1 回クリックするだけでターゲットの場所を参照できます。 |
ナビゲーション バー | "オフ" | コード ウィンドウの上部にあるドロップダウン ボックスを有効にするには、このオプションを設定します。 これらのフィールドは、直接移動先の型またはメンバーを選択できるコードベース内のコードに移動するのに役立ちます。 注: このオプションは、[テキスト エディター]>[すべての言語]>[全般]>[ナビゲーションバーを有効化] のグローバル設定の影響を受けます。 詳細については、[ナビゲーション コード]>[ナビゲーション バー] を参照してください。 |
自動中かっこ補完 | オン | 設定してコードを入力すると、開いている中かっこの右中かっこが自動的に追加されます。 |
選択領域がない場合に、切り取りまたはコピー コマンドを空白行に適用する | オン | 既定では、Visual Studio では、明示的な選択がない場合にはコード行全体を切り取るかコピーします。 空白行で呼び出すときにこうした切り取りやコピーの動作を有効または無効にする場合は、このオプションを使用します。 |
詳細については、[オプション ダイアログ ボックス: テキスト エディター]>[全般] を参照してください。
高度な Python エディター オプション
[ツール]>[オプション]>[テキスト エディター]>[Python]>[詳細] では、次のオプションを使用できます。
オプション | Default | 説明 |
---|---|---|
入力候補の自動インポートをオファーする | オン | 設定すると、完了時に自動インポートが実行されます。 |
関数の角かっこを自動的に追加する | "オフ" | 設定すると、エディターでコードを入力した時に、Visual Studio が自動的に関数に角かっこを追加します。 |
入力候補の結果
[入力候補の結果] グループには、次のオプションがあります。
オプション | Default | 説明 |
---|---|---|
メンバーの入力候補にメンバーの共通部分を表示する | "オフ" | このオプションを設定すると、すべての可能な型でサポートされている入力候補のみが表示されます。 |
検索文字列に基づいてリストをフィルターする | オン | 入力時に入力候補のフィルター処理を適用します。 |
すべての識別子の入力候補を自動的に表示する | オン | エディターと [インタラクティブ ウィンドウ] の両方の入力候補を無効にするには、このオプションをオフにします。 |
入力候補一覧からの選択
[入力候補一覧の選択] グループには、次のオプションがあります。
オプション | Default | 説明 |
---|---|---|
次の文字の入力によって確定する | {}[]().,:;+-*/%&|^~=<>#@\ | 通常、入力候補一覧から選択できる識別子の後にはこれらの文字が続きます。そのため、こうした文字を入力するだけで入力候補を確定すると便利です。 必要に応じて、特定の文字を一覧から削除したり、一覧に追加したりできます。 |
Enter キーを押して現在の入力候補を確定する | オン | 設定して Enter キーを押すと、現在選択済みの入力候補が選択され、適用されます。 認識される文字の一覧については、この表の最初のエントリを参照してください。 |
単語を完全に入力した後 Enter キーで新しい行を追加する | Off | 既定では、入力候補のポップアップに表示される単語をすべて入力して Enter キーを押すと、その入力候補が確定します。 このオプションを設定することで、識別子の入力を終えると Enter キーによって新しい行が挿入されるため、効率よく入力候補を確定することができます。 |
その他のオプション
[その他のオプション] グループ内には、次の設定があります。
オプション | Default | 説明 |
---|---|---|
[ファイルが開かれたときにアウトライン モードを実行する] | 有効 | Python コード ファイルを開くと、エディターで Visual Studio のアウトライン機能が自動的に有効になります。 |
貼り付け時に REPL プロンプトを削除する | オン | 貼り付けたテキストから REPL Python コマンド プロンプトと継続プロンプト (>>> と ...) を削除します。これにより、インタラクティブ ウィンドウからエディターにコードを簡単に転送できます。 他のソースから貼り付けて、これらの文字を保持する必要がある場合は、このオプションをオフにしてください。 |
種類に基づいた色名 | 有効 | Python コードの構文を色分け表示することができます。 |
[フォントおよび色] のオプション
[テキスト エディター] グループを [Python] に設定している場合は、[環境]>[フォントと色] で他の Python オプションを使用できます。
[Python] オプションの名前には "Python" が先頭に付いているのですぐにわかります。 すべての Visual Studio の配色テーマの既定のフォントは 10 pt Consolas 標準 (太字ではありません) です。 既定の色はテーマによって異なります。 通常は、テキストを読みやすくするためにフォントまたは色を変更します。