Python 設定リファレンス
Visual Studio Code の Python 拡張機能は、高度なカスタマイズが可能です。このページでは、利用可能な主要な設定について説明します。
VS Code での設定操作に関する一般的な情報については、「ユーザー設定とワークスペース設定」を、定義済みの変数のサポートについては「変数リファレンス」を参照してください。
一般的な Python 設定
| 設定 (python.) | 既定値 | 説明 |
|---|---|---|
| condaPath | "conda" |
conda 実行ファイルへのパス。 |
| defaultInterpreterPath | "python" |
ワークスペースに対して Python 拡張機能が最初に読み込まれるときに使用されるデフォルトの Python インタープリターへのパス、または Python インタープリターを含むフォルダーへのパス。${workspaceFolder} や ${workspaceFolder}/.venv などの変数を使用できます。フォルダーへのパスを使用すると、プロジェクトに関わるすべての人が、プラットフォームに依存した正確なパスを指定することなく、各自の OS に適した .venv フォルダー内に環境を作成できます。これにより、settings.json ファイルをソースコードリポジトリに含めることが可能になります。注意: ワークスペースでインタープリターが選択された後にこの設定を変更しても、Python 拡張機能には適用されず、考慮もされません。Python 拡張機能がこの設定を自動的に追加したり変更したりすることはありません。 |
| envFile | "${workspaceFolder}/.env" |
環境変数の定義を含むファイルへの絶対パス。.env ファイルのサポートを参照してください。 |
| experiments.enabled | true |
Python 拡張機能での A/B テスト(試験運用)を有効にします。有効にすると、提案された機能強化や新機能が提供される場合があります。 |
| globalModuleInstallation | false |
パッケージを現在のユーザーのみにインストールするために --user コマンドライン引数を使用するか(デフォルト)、グローバル環境のすべてのユーザーに対してインストールするか(true に設定した場合)を指定します。仮想環境を使用している場合は無視されます。--user 引数の詳細については、pip - User Installs を参照してください。 |
| interpreter.infoVisibility | "onPythonRelated" |
ステータスバーに選択されたインタープリター情報を表示するタイミングを制御します。デフォルトでは、Python 関連のファイルがエディターで開かれている場合にのみ表示されます。常に表示したい場合は "always" に、完全に非表示にしたい場合は "never" に設定できます。 |
| pipenvPath | "pipenv" |
アクティブ化に使用する pipenv 実行ファイルへのパス。 |
| poetryPath | "poetry" |
インストールされている場合、Poetry 依存関係マネージャーの実行ファイルの場所を指定します。デフォルト値の "poetry" は、実行ファイルが現在のパス(PATH)内にあることを想定しています。Python 拡張機能は、Poetry が利用可能で、ワークスペースフォルダーに poetry.lock ファイルがある場合に、この設定を使用してパッケージをインストールします。 |
| REPL.enableREPLSmartSend | true |
Shift+Enter で「スマート送信(Smart Send)」を利用するかどうかを指定します。スマート送信は、カーソルが置かれているコードを確認し、実行可能な最小のコードチャンクを Python REPL に送信した後、カーソルを次の行に移動します。 |
| terminal.activateEnvInCurrentTerminal | false |
Python 拡張機能がアクティブになったときに、選択されている仮想環境を使用して、現在開いているターミナルをアクティブ化するかどうかを指定します。 |
| terminal.activateEnvironment | true |
新しいターミナルが作成されたときに、Python: インタープリターを選択 (Select Interpreter) コマンドで選択した環境を自動的にアクティブ化するかどうかを指定します。例えば、この設定が true で仮想環境を選択している場合、拡張機能は新しいターミナルの作成時に環境の activate コマンドを自動的に実行します(macOS/Linux では source env/bin/activate、Windows では env\scripts\activate)。注意: この設定は、python-envs.terminal.autoActivationType が構成されている場合は、そちらの設定によって上書きされます。 |
| terminal.executeInFileDir | false |
現在のフォルダーではなく、ファイルのディレクトリでファイルを実行するかどうかを指定します。 |
| terminal.focusAfterLaunch | false |
Python ターミナルを起動したときに、カーソルのフォーカスをターミナルに切り替えるかどうかを指定します。 |
| terminal.launchArgs | [] |
Python: ターミナルで Python ファイルを実行 などのコマンドを使用してファイルを実行するときに、Python インタープリターに渡される起動引数。launchArgs リスト内では、スペースで区切られた各項目がトップレベルのコマンドライン要素となります(スペースを含む引用符付きの値は単一のトップレベル要素となり、リスト内の 1 つの項目になります)。例えば、引数 --a --b --c {"value1" : 1, "value2" : 2} の場合、リスト項目は ["--a", "--b", "--c", "{\"value1\" : 1, \"value2\" : 2}\""] となります。デバッグ時には、launch.json で選択されたデバッグ構成の引数が使用されるため、VS Code はこの設定を無視することに注意してください。 |
| terminal.useEnvFile | false |
env ファイルおよび python.envFile 設定からの環境変数をターミナルに注入するかどうかを制御します。 |
| venvFolders | [] |
仮想環境が作成されるフォルダーへのパス。使用する仮想化ツールに応じて、プロジェクト自体(${workspaceFolder})や、すべての仮想環境が並んで配置されている個別のフォルダー(.\envs、~/.virtualenvs など)を指定できます。注意: この設定は自動的に python-envs.globalSearchPaths と統合されます。追加機能を利用するために、新しい設定への移行を検討してください。 |
Python Environments 拡張機能の設定
Python Environments 拡張機能は、VS Code UI 内で環境とパッケージの管理を提供します。これらの設定は、環境の検出、作成、およびターミナルのアクティブ化を制御します。
環境管理の詳細については、Python 環境を参照してください。
環境管理の設定
| 設定 (python-envs.) | 既定値 | 説明 |
|---|---|---|
| defaultEnvManager | "ms-python.python:venv" |
環境の作成と管理のためのデフォルトの環境マネージャー。 |
| defaultPackageManager | "ms-python.python:pip" |
環境にパッケージをインストールするためのデフォルトのパッケージマネージャー。 |
| pythonProjects | [] |
Python プロジェクトのリスト。各項目は path (string), envManager (string), packageManager (string) というプロパティを持つオブジェクトです。マルチルート ワークスペースでフォルダーごとに環境を構成するために使用します。 |
| workspaceSearchPaths | ["./**/.venv"] |
このワークスペース内で環境を検索するための Glob パターン。デフォルトでは、ワークスペース内の任意の場所にある .venv という名前のフォルダーを検索します。注意: この設定は、ユーザーレベルではなく、ワークスペースまたはフォルダーレベルで構成する必要があります。 |
| globalSearchPaths | [] |
すべてのワークスペースにわたって Python 環境を検索するための絶対パス。~/envs のような共有環境フォルダーに使用します。注意: レガシー設定の python.venvPath と python.venvFolders は、この設定に自動的に統合されます。 |
| alwaysUseUv | true |
true に設定すると、利用可能な場合は uv を使用してすべての仮想環境を管理します。false に設定すると、uv は uv によって明示的に作成された仮想環境のみを管理します。 |
ターミナルの設定
| 設定 (python-envs.terminal.) | 既定値 | 説明 |
|---|---|---|
| autoActivationType | "command" |
拡張機能がターミナルで環境をアクティブ化する方法を指定します。利用可能な値: command (ターミナルでコマンドを実行してアクティブ化)、shellStartup (シェル統合を使用するか、ターミナルのシェル起動スクリプトを変更してアクティブ化。zsh, fish, pwsh, bash, cmd でサポート)、off (自動アクティブ化なし)。注意: この設定は python.terminal.activateEnvironment よりも優先されます。 |
| showActivateButton | false |
(試験運用中) ターミナルメニューに「アクティブ化 (Activate)」ボタンを表示するかどうか。 |
レガシー設定からの移行
古い Python 拡張機能の設定から移行する場合、以下の表は新しい設定へのマッピングを示しています。
| レガシー設定 | 新しい設定 | 注記 |
|---|---|---|
python.venvPath |
python-envs.globalSearchPaths または python-envs.workspaceSearchPaths |
レガシー設定は引き続き動作し、自動的に統合されます。Glob パターンを使用するように移行することを検討してください。 |
python.venvFolders |
python-envs.globalSearchPaths または python-envs.workspaceSearchPaths |
レガシー設定は引き続き動作し、自動的に統合されます。 |
python.terminal.activateEnvironment |
python-envs.terminal.autoActivationType |
自動アクティブ化を無効にするには "off" に設定します。新しい設定が構成されている場合は、そちらが優先されます。 |
デバッガーの設定
一般的なデバッグ
| 設定 (python.debugpy.) | 既定値 | 説明 | 関連項目 |
|---|---|---|---|
| debugJustMyCode | true |
デバッガーがユーザーが作成したコードのみをステップ実行するかどうかを指定します。無効にすると、ライブラリコードもステップ実行できるようになります。 | デバッグ |
テストの設定
一般的なテスト
| 設定 (python.testing.) | 既定値 | 説明 | 関連項目 |
|---|---|---|---|
| autoTestDiscoverOnSaveEnabled | true |
テストファイルを保存したときに、テストの自動検出を有効にするか無効にするかを指定します。 | テスト |
| cwd | null | テスト用のオプションの作業ディレクトリを指定します。 | テスト |
| debugPort | 3000 |
unittest のデバッグに使用されるポート番号。 | テスト |
| promptToConfigure | true |
潜在的なテストが発見された場合に、VS Code がテストフレームワークの構成を促すかどうかを指定します。 | テスト |
unittest フレームワーク
| 設定 (python.testing.) | 既定値 | 説明 | 関連項目 |
|---|---|---|---|
| unittestArgs | ["-v", "-s", ".", "-p", "*test*.py"] |
unittest に渡す引数。スペースで区切られた各トップレベル要素は、リスト内の個別の項目として記述します。 | テスト |
| unittestEnabled | false |
テストに unittest を使用するかどうかを指定します。 | テスト |
pytest フレームワーク
| 設定 (python.testing.) | 既定値 | 説明 | 関連項目 |
|---|---|---|---|
| pytestArgs | [] |
pytest に渡す引数。スペースで区切られた各トップレベル要素は、リスト内の個別の項目として記述します。pytest-cov をインストールしてテストをデバッグする場合は、これらの引数に --no-cov を含めてください。 |
テスト |
| pytestEnabled | false |
テストに pytest を使用するかどうかを指定します。 | テスト |
| pytestPath | "pytest" |
pytest へのパス。pytest が現在の環境外にある場合は、フルパスを使用してください。 | テスト |
コード解析の設定
IntelliSense エンジンの設定
注意: 言語サーバー(Language Server)の設定を変更したことがない場合、デフォルト値により言語サーバーは Pylance に設定されています。
| 設定 (python.) | 既定値 | 説明 |
|---|---|---|
| languageServer | 既定値 | 言語サーバーのタイプを定義します (Default, Pylance, Jedi, None)。 |
Python 言語サーバーの設定
Pylance 言語サーバー
言語サーバーの設定は、python.languageServer が Pylance または Default の場合に適用されます。言語サーバーで問題が発生した場合は、言語サーバーのリポジトリにある「トラブルシューティング」を参照してください。
| 設定 (python.analysis.) | 既定値 | 説明 |
|---|---|---|
| aiCodeActions | true | 特定の AI 支援コードアクションを有効にするかどうか。GitHub Copilot Chat 拡張機能が有効である必要があります。受け入れられる値は、コードアクションをキー、ブール値を値とするオブジェクトです。利用可能なコードアクション: implementAbstractClasses (抽象クラスから継承されたクラスのメソッドを実装するコードアクションを有効にします。GitHub Copilot からの AI 提案を使用してメソッド本体を埋めます)。使用例: {"implementAbstractClasses": true} |
| autoFormatStrings | false | 文字列内で "{" を入力したときに、自動的に接頭辞 "f" を付けるかどうか。 |
| autoImportCompletions | false | 補完候補に自動インポートを表示するかどうかを制御します。利用可能な値は true および false です。 |
| autoIndent | true | Python コードの入力時に、言語のセマンティクスに基づいてインデントを自動的に調整するかどうか。受け入れられる値は true または false です。 |
| autoSearchPaths | true | 定義済みの名前 (src など) に基づいて検索パスを自動的に追加するかどうか。利用可能な値は true および false です。 |
| completeFunctionParens | false | 関数の補完時に括弧を追加します。受け入れられる値は true および false です。 |
| diagnosticMode | openFilesOnly | 言語サーバーが問題の解析対象とするコードファイルを指定します。利用可能な値は workspace (ワークスペース全体) および openFilesOnly (開いているファイルのみ) です。 |
| diagnosticSeverityOverrides | {} | 個別の診断ルールの重要度レベルをユーザーが上書きできるようにします。各ルールについて、利用可能な重要度レベルは error (赤の波線)、warning (黄色の波線)、information (青の波線)、および none (ルール無効) です。重要度ルールに使用するキーについては、以下の「診断の重要度ルール」セクションを参照してください。 |
| enableEditableInstalls | false |
PEP 660 で定義されている、エディタブルモード (pip install -e .) でインストールされたパッケージのインポートパスを解決することで、IntelliSense サポートを向上させます。 |
| exclude | [] | 解析に含めるべきではないディレクトリまたはファイルのパス。これらは python.analysis.include 設定にリストされているディレクトリを上書きし、特定のサブディレクトリを除外できるようにします。除外リストにあるファイルであっても、除外されていないソースファイルから参照/インポートされている場合は、解析に含まれる可能性があることに注意してください。パスには、** (ディレクトリまたは複数レベルのディレクトリ)、* (0 文字以上のシーケンス)、? (単一文字) などのワイルドカード文字を含めることができます。除外パスが指定されていない場合、Pylance は自動的に **/node_modules, **/__pycache__, .git およびすべての仮想環境ディレクトリを除外します。 |
| extraPaths | [] | インポート解決のための追加の検索パスを指定します。複数のパスがある場合は、文字列として指定し、カンマで区切られたリストを受け入れます。例: ["path 1","path 2"]。 |
| importFormat | absolute | モジュールの自動インポート時のデフォルト形式を定義します。受け入れられる値は absolute (絶対パス) または relative (相対パス) です。 |
| include | [] | 解析に含めるディレクトリまたはファイルのパス。パスが指定されていない場合、Pylance はデフォルトでワークスペースのルートを含むディレクトリを対象にします。パスには、**, *, ? などのワイルドカード文字を含めることができます。 |
| fixAll | [] |
すべて修正 (Fix All) コマンドまたは source.fixAll コードアクションを実行したときに実行されるコードアクションのリスト。受け入れられる値: source.unusedImports (開いているファイル内の未使用のインポートをすべて削除)、source.convertImportFormat (python.analysis.importFormat 設定に従ってインポートを変換)。 |
| includeAliasesFromUserFiles | false | 自動インポートの提案や「インポートの追加」クイックフィックスに、ユーザーファイルのエイリアスシンボルを含めるかどうか。無効にすると、Pylance はシンボルが定義されている場所からのインポートを提案します。有効にすると、シンボルがインポート(エイリアス)されているファイルからのインポート提案も表示されます。利用可能な値は true および false です。 |
| ignore | [] | 解析対象のファイルやその依存関係内であっても、診断出力(エラーや警告)を抑制するディレクトリまたはファイルのパス。パスには **, *, ? などのワイルドカードを使用できます。値が指定されていない場合は、python.linting.ignorePatterns (設定されている場合) の値が使用されます。 |
| indexing | true | 自動インポート、クイックフィックス、自動補完などの機能でより完全なシンボルセットを提供するために、起動時にインストール済みのサードパーティライブラリに加えてユーザーファイルをインデックスに登録するかどうかを指定します。受け入れられる値は true または false です。true に設定すると、デフォルトで Pylance はインストール済みパッケージのトップレベルシンボル(package/__init__.py の __all__ にあるシンボルなど)、および最大 2000 個のユーザーファイルのすべてのシンボルをインデックスに登録します。false の場合、以前にエディターで開かれたか読み込まれたファイルで既に参照または使用されているシンボルのみが表示されます。 |
| inlayHints.callArgumentNames | オフ | 呼び出し引数名のインレイヒントの表示を制御します。利用可能な値は off, partial, all です。off に設定すると、インレイヒントは表示されません。partial に設定すると、位置専用パラメータとキーワード専用パラメータのヒントが無効になります。all に設定すると、すべてのパラメータのヒントが表示されます。 |
| inlayHints.functionReturnTypes | false | 関数の戻り値の型に対してインレイヒントを表示するかどうか。受け入れられる値は true または false です。 |
| inlayHints.pytestParameters | false | pytest フィクスチャの引数型に対してインレイヒントを表示するかどうか。受け入れられる値は true または false です。 |
| inlayHints.variableTypes | false | 変数の型に対してインレイヒントを表示するかどうか。受け入れられる値は true または false です。 |
| languageServerMode | default | 開発ニーズに基づいて Pylance のパフォーマンスを最適化するための定義済み構成を提供します。利用可能な値は default および light です。default に設定すると、システムに過度な負荷をかけることなく、ほとんどの環境で十分な機能を提供します。light に設定すると、軽量でメモリ効率の高いセットアップが有効になります。このモードでは、Pylance を合理化されたテキストエディターのように動作させるために様々な機能が無効になり、フル機能の IntelliSense を必要とせずリソース消費を抑えたい場合に適しています。light モードでは、以下の設定が上書きされます: python.analysis.exclude は ["**"] に、python.analysis.useLibraryCodeForTypes は false に、python.analysis.enablePytestSupport は false に、python.analysis.indexing は false に設定されます。 |
| logLevel | Error |
言語サーバーによって実行されるロギングのレベルを指定します。提供される情報のレベルが低い順に Error, Warning, Information, Trace です。 |
| nodeArguments | "--max-old-space-size=8192" |
python.analysis.nodeExecutable で定義されたカスタム Node.js 実行ファイルに直接渡すカスタム引数を指定します。これは、より多くのメモリを割り当てたり、Node.js の動作を構成したりするために使用できます。Node.js がサポートする引数のリストを受け入れます。リスト内では各 "arg=value" をカンマで区切る必要があります。使用例: "python.analysis.nodeArguments": ["--max-old-space-size=8192"] |
| nodeExecutable | "" |
使用する Node.js 実行ファイルを指定します。これにより Pylance がより多くのメモリを割り当てることが可能になります。受け入れられる値は、実行ファイルへのパス文字列、空文字列、または "auto" です。空文字列に設定すると、Pylance は VS Code の Node 実行ファイルを使用します。"auto" に設定すると、自動的に Node.js をダウンロードします。 |
| packageIndexDepths | [] | インストール済みパッケージのインデックス作成深度を、パッケージごとに上書きするために使用します。デフォルトでは、トップレベルモジュールのみがインデックスされます (depth = 1)。サブモジュールをインデックスするには、インデックスしたいサブモジュールのレベルごとに深度を 1 ずつ増やします。受け入れられる値は、{"name": "パッケージ名 (str)", "depth": "スキャン深度 (int)", "includeAllSymbols": "すべてのシンボルを含めるか (bool)"} のようなオブジェクトのタプルです。includeAllSymbols が false の場合、各パッケージの __all__ にあるシンボルのみが含まれます。true の場合、Pylance はファイル内のすべてのモジュール/トップレベルシンボル宣言をインデックスします。使用例: [{"name": "sklearn", "depth": 2, "includeAllSymbols": true}, {"name": "matplotlib", "depth": 3, "includeAllSymbols": false}] |
| stubPath | ./typings | カスタム型スタブを含むディレクトリへのパスを指定します。各パッケージの型スタブファイルは、それぞれのサブディレクトリ内にあることが期待されます。 |
| typeCheckingMode | オフ | 実行する型チェック解析のレベルを指定します。利用可能な値は off, basic, strict です。off に設定すると型チェック解析は行われませんが、解決できないインポート/変数の診断は生成されます。basic に設定すると、型チェックに関連しないすべてのルール(off の全ルール)および基本的な型チェックルールが使用されます。strict に設定すると、最高重要度の「エラー」ですべての型チェックルール(off および basic カテゴリの全ルールを含む)が使用されます。 |
| useLibraryCodeForTypes | true | 型スタブが見つからない場合に、パッケージのソースコードを解析します。利用可能な値は true および false です。 |
| userFileIndexingLimit | 2000 | ワークスペース内で Pylance がインデックスを作成するユーザーファイルの最大数を設定します。-1 に設定すると、Pylance はすべてのファイルをインデックスします。ファイルのインデックス作成は、パフォーマンスを大幅に消費するタスクであることに注意してください。 |
診断の重要度ルール
このセクションでは、以下の例に示すように python.analysis.diagnosticSeverityOverrides 設定を使用してカスタマイズできる、すべての利用可能なルールについて詳しく説明します。
{
"python.analysis.diagnosticSeverityOverrides": {
"reportUnboundVariable": "information",
"reportImplicitStringConcatenation": "warning"
}
}
| 値 | 説明 |
|---|---|
| reportAssertAlwaysTrue | ほぼ確実に常に True と判定される 'assert' ステートメントに対する診断。これはプログラミングミスの可能性があります。 |
| reportCallInDefaultInitializer | デフォルト値の初期化式内での関数呼び出しに対する診断。このような呼び出しは、モジュール初期化時に実行される負荷の高い操作を隠蔽してしまう可能性があります。 |
| reportConstantRedefinition | 名前がすべて大文字でアンダースコアと数字を含む変数(定数として扱われるもの)を再定義しようとする試みに対する診断。 |
| reportDuplicateImport | 複数回インポートされているシンボルまたはモジュールに対する診断。 |
| reportFunctionMemberAccess | 関数に対するメンバーアクセス(プロパティアクセスなど)に関する診断。 |
| reportGeneralTypeIssues | 一般的な型の不一致、サポートされていない操作、引数/パラメータの不一致などに対する診断。これには、他のルールでカバーされていない基本的な型チェックルールがすべて含まれます。構文エラーは含まれません。 |
| reportImportCycles | 循環インポート チェーンに対する診断。これらは Python ではエラーではありませんが、型解析を遅らせ、しばしばアーキテクチャ上の階層構造の問題を示唆します。一般的には避けるべきです。 |
| reportImplicitStringConcatenation | 隣接して並んでいる 2 つ以上の文字列リテラル(暗黙的な結合)に対する診断。これは不適切な慣習とみなされ、カンマの欠落などのバグを隠してしまうことがよくあります。 |
| reportIncompatibleMethodOverride | 基底クラスの同名メソッドを互換性のない方法(パラメータ数、型、または戻り値の型の不一致)でオーバーライドしているメソッドに対する診断。 |
| reportIncompatibleVariableOverride | 基底クラスのシンボルと同じ名前のクラス変数を、互換性のない型でオーバーライドしている宣言に対する診断。 |
| reportInvalidStringEscapeSequence | 文字列リテラル内で使用されている無効なエスケープシーケンスに対する診断。Python の仕様では、将来のバージョンでこのようなシーケンスは構文エラーになるとされています。 |
| reportInvalidStubStatement | スタブファイル内に現れるべきではないステートメントに対する診断。 |
| reportInvalidTypeVarUse | 関数シグネチャ内での型変数 (TypeVar) の不適切な使用に対する診断。 |
| reportMissingImports | 対応するインポートされた Python ファイルまたは型スタブファイルが見つからないインポートに対する診断。 |
| reportMissingModuleSource | 対応するソースファイルが見つからないインポートに対する診断。これは、型スタブは見つかったもののモジュールソースファイルが見つからなかった場合に発生し、この実行環境で実行時にコードが失敗する可能性があることを示します。型チェックは型スタブを使用して行われます。 |
| reportMissingTypeArgument | 明示的または暗黙的な型引数を指定せずにジェネリッククラスが使用された場合の診断。 |
| reportMissingTypeStubs | 対応する型スタブファイル(typeshed ファイルまたはカスタムスタブ)がないインポートに対する診断。型チェッカーが最善の解析を行うには、型スタブが必要です。 |
| reportOptionalCall | Optional 型の変数を呼び出そうとする試みに対する診断。 |
| reportOptionalContextManager | Optional 型をコンテキストマネージャー(with ステートメントのパラメータ)として使用しようとする試みに対する診断。 |
| reportOptionalIterable | Optional 型を反復可能オブジェクト(例: for ステートメント内)として使用しようとする試みに対する診断。 |
| reportOptionalMemberAccess | Optional 型の変数のメンバーにアクセスしようとする試みに対する診断。 |
| reportOptionalOperand | Optional 型を二項演算子または単項演算子('+', '==', 'or', 'not' など)のオペランドとして使用しようとする試みに対する診断。 |
| reportOptionalSubscript | Optional 型の変数に添字(インデックス)を指定しようとする試みに対する診断。 |
| reportPrivateUsage | プライベートまたは保護された変数や関数の誤った使用に対する診断。保護されたクラスメンバーは単一のアンダースコア _ で始まり、サブクラスからのみアクセスできます。プライベートクラスメンバーは二重のアンダースコアで始まり(末尾は二重でない)、宣言されたクラス内からのみアクセスできます。クラス外で宣言された変数や関数は、名前が単一または二重のアンダースコアで始まる場合プライベートとみなされ、宣言されたモジュールの外からはアクセスできません。 |
| reportPropertyTypeMismatch | セッターに渡される値の型が、ゲッターによって返される値の型に代入可能でないプロパティに対する診断。このような不一致は、変数のように動作することを意図したプロパティの本来の用途に反します。 |
| reportSelfClsParameterName | インスタンスメソッドの "self" パラメータ、またはクラスメソッドの "cls" パラメータの欠落や名前の間違いに対する診断。メタクラス("type" から派生したクラス)のインスタンスメソッドでは、インスタンスメソッドに "cls" を使用することが許可されています。 |
| reportUndefinedVariable | 未定義の変数に対する診断。 |
| reportUnboundVariable | アンバインド(割り当て前)またはアンバインドの可能性がある変数に対する診断。 |
| reportUnknownArgumentType | 型が不明な関数またはメソッドの呼び出し引数に対する診断。 |
| reportUnknownLambdaType | 型が不明なラムダ式の入力パラメータまたは戻り値に対する診断。 |
| reportUnknownMemberType | 型が不明なクラス変数またはインスタンス変数に対する診断。 |
| reportUnknownParameterType | 型が不明な関数またはメソッドの入力パラメータまたは戻り値に対する診断。 |
| reportUnknownVariableType | 型が不明な変数に対する診断。 |
| reportUnnecessaryCast | 静的に不要であると判断された 'cast' 呼び出しに対する診断。このような呼び出しは、時としてプログラミングミスの可能性があります。 |
| reportUnnecessaryIsInstance | 結果が静的に常に True または常に False であると判断された 'isinstance' または 'issubclass' 呼び出しに対する診断。このような呼び出しは、しばしばプログラミングミスの可能性があります。 |
| reportUnusedCallResult | 戻り値が使用されず、かつ None でもない呼び出し式に対する診断。 |
| reportUnusedClass | アクセスされていないプライベート名(アンダースコアで始まる)を持つクラスに対する診断。 |
| reportUnusedCoroutine | コルーチン (Coroutine) を返し、その結果が消費(await など)されていない呼び出し式に対する診断。 |
| reportUnusedFunction | アクセスされていないプライベート名(アンダースコアで始まる)を持つ関数またはメソッドに対する診断。 |
| reportUnusedImport | ファイル内で一度も参照されていないインポート済みシンボルに対する診断。 |
| reportUnusedVariable | 一度もアクセスされていない変数に対する診断。 |
| reportUnsupportedDunderAll | __all__ に対して行われたサポートされていない操作に対する診断。 |
| reportWildcardImportFromLibrary | 外部ライブラリからのワイルドカードインポート (from ... import *) に対する診断。 |
自動補完(AutoComplete)の設定
| 設定 (python.autoComplete.) | 既定値 | 説明 | 関連項目 |
|---|---|---|---|
| extraPaths | [] |
自動補完データを読み込むための追加パッケージの場所を指定します。 | 編集 |
定義済みの変数
Python 拡張機能の設定は、定義済みの変数をサポートしています。一般的な VS Code 設定と同様に、変数は ${variableName} という構文を使用します。具体的には、この拡張機能は以下の変数をサポートしています。
-
${cwd} - 起動時のタスクランナーの現在の作業ディレクトリ
-
${workspaceFolder} - VS Code で開いているフォルダーのパス
-
${workspaceRootFolderName} - スラッシュ (/) なしの、VS Code で開いているフォルダーの名前
-
${workspaceFolderBasename} - スラッシュ (/) なしの、VS Code で開いているフォルダーの名前
-
${file} - 現在開いているファイル
-
${relativeFile} -
workspaceFolderからの相対パスでの現在開いているファイル -
${relativeFileDirname} -
workspaceFolderからの相対パスでの現在開いているファイルのディレクトリ名 -
${fileBasename} - 現在開いているファイルのベース名(ファイル名)
-
${fileBasenameNoExtension} - 拡張子なしの、現在開いているファイルのベース名
-
${fileDirname} - 現在開いているファイルのディレクトリ名
-
${fileExtname} - 現在開いているファイルの拡張子
-
${lineNumber} - アクティブなファイルで現在選択されている行番号
-
${selectedText} - アクティブなファイルで現在選択されているテキスト
-
${execPath} - 実行中の VS Code 実行ファイルへのパス
定義済み変数の詳細情報や使用例については、全般的な VS Code ドキュメントの「変数リファレンス」を参照してください。
次のステップ
- Python environments - 編集およびデバッグに使用する Python インタープリターを制御します。
- コードの編集 - Python のオートコンプリート、IntelliSense、フォーマット、リファクタリングについて説明します。
- Linting - さまざまな Python リンターを有効化、構成、適用する。
- デバッグ - ローカルおよびリモートでの Python のデバッグ方法を学習します。
- テスト - テスト環境を構成し、テストを検出、実行、およびデバッグします。