Python-Einstellungen-Referenz
Die Python-Erweiterung für Visual Studio Code ist hochgradig konfigurierbar. Diese Seite beschreibt die wichtigsten Einstellungen, mit denen Sie arbeiten können.
Allgemeine Informationen zur Arbeit mit Einstellungen in VS Code finden Sie unter Benutzer- und Arbeitsbereichseinstellungen sowie unter der Variablenreferenz für Informationen zur Unterstützung vordefinierter Variablen.
Allgemeine Python-Einstellungen
| Einstellung (python.) |
Standard | Beschreibung |
|---|---|---|
| condaPath | "conda" |
Pfad zur conda-ausführbaren Datei. |
| defaultInterpreterPath | "python" |
Pfad zum Standard-Python-Interpreter, der von der Python-Erweiterung beim ersten Laden für einen Arbeitsbereich verwendet wird, oder Pfad zu einem Ordner, der den Python-Interpreter enthält. Kann Variablen wie ${workspaceFolder} und ${workspaceFolder}/.venv verwenden.Die Verwendung eines Pfads zu einem Ordner ermöglicht es jedem, der mit einem Projekt arbeitet, eine Umgebung im Ordner .venv zu erstellen, die für sein Betriebssystem geeignet ist, anstatt einen exakten plattformabhängigen Pfad angeben zu müssen. Die Datei settings.json kann dann in ein Quellcode-Repository aufgenommen werden.Hinweis: Änderungen an dieser Einstellung, die vorgenommen werden, nachdem ein Interpreter für einen Arbeitsbereich ausgewählt wurde, werden von der Python-Erweiterung nicht angewendet oder berücksichtigt. Die Python-Erweiterung fügt diese Einstellung nicht automatisch hinzu oder ändert sie. |
| envFile | "${workspaceFolder}/.env" |
Absoluter Pfad zu einer Datei, die Definitionen von Umgebungsvariablen enthält. Siehe Konfigurieren von Python-Umgebungen – Datei für Umgebungsdefinitionsvariablen. |
| experiments.enabled | true |
Aktiviert A/B-Experimente in der Python-Erweiterung. Wenn aktiviert, werden Ihnen möglicherweise vorgeschlagene Verbesserungen und/oder Funktionen angeboten. |
| globalModuleInstallation | false |
Gibt an, ob Pakete nur für den aktuellen Benutzer mit dem Befehlszeilenargument --user (Standard) installiert werden sollen oder ob sie für alle Benutzer in der globalen Umgebung installiert werden sollen (wenn auf true gesetzt). Wird bei Verwendung einer virtuellen Umgebung ignoriert.Weitere Informationen zum Argument --user finden Sie unter pip – User Installs. |
| interpreter.infoVisibility | "onPythonRelated" |
Steuert, wann die Informationen zum ausgewählten Interpreter in der Statusleiste angezeigt werden. Standardmäßig wird sie nur angezeigt, wenn Python-bezogene Dateien im Editor geöffnet sind. Sie können sie auf "always" setzen, wenn sie immer in der Statusleiste angezeigt werden soll, oder auf "never", um sie vollständig auszublenden. |
| pipenvPath | "pipenv" |
Pfad zur pipenv-ausführbaren Datei, die für die Aktivierung verwendet werden soll. |
| poetryPath | "poetry" |
Gibt den Speicherort der ausführbaren Datei des Poetry-Abhängigkeitsmanagers an, falls installiert. Der Standardwert "poetry" geht davon aus, dass die ausführbare Datei im aktuellen Pfad liegt.Die Python-Erweiterung verwendet diese Einstellung, um Pakete zu installieren, wenn Poetry verfügbar ist und eine Datei poetry.lock im Arbeitsordner vorhanden ist. |
| REPL.enableREPLSmartSend | true |
Gibt an, ob Umschalt+Eingabe Smart Send verwendet. Smart Send betrachtet den Code, an dem sich der Cursor befindet, sendet den kleinsten ausführbaren Code-Chunk an die Python-REPL und platziert dann Ihren Cursor in der nächsten Codezeile. |
| terminal.activateEnvInCurrentTerminal | false |
Gibt an, ob das aktuell geöffnete Terminal beim Aktivieren der Python-Erweiterung mit der ausgewählten virtuellen Umgebung aktiviert werden soll. |
| terminal.activateEnvironment | true |
Gibt an, ob die Umgebung, die Sie über den Befehl Python: Interpreter auswählen auswählen, automatisch aktiviert werden soll, wenn ein neues Terminal erstellt wird. Wenn diese Einstellung beispielsweise auf true gesetzt ist und Sie eine virtuelle Umgebung auswählen, führt die Erweiterung beim Erstellen eines neuen Terminals automatisch den aktivieren-Befehl der Umgebung aus (source env/bin/activate unter macOS/Linux; env\scripts\activate unter Windows). |
| terminal.executeInFileDir | false |
Gibt an, ob eine Datei im Verzeichnis der Datei und nicht im aktuellen Ordner ausgeführt werden soll. |
| terminal.focusAfterLaunch | false |
Ob der Cursor-Fokus beim Starten eines Python-Terminals auf das Terminal umgeschaltet werden soll. |
| terminal.launchArgs | [] |
Startargumente, die dem Python-Interpreter übergeben werden, wenn Sie eine Datei mit Befehlen wie Python: Python-Datei im Terminal ausführen ausführen. In der Liste launchArgs ist jedes Element ein Befehlszeilenelement auf oberster Ebene, das durch ein Leerzeichen getrennt ist (in Anführungszeichen gesetzte Werte, die Leerzeichen enthalten, sind ein einzelnes Element auf oberster Ebene und somit ein Element in der Liste).Beispielsweise für die Argumente --a --b --c {"value1" : 1, "value2" : 2} sollten die Listenelemente ["--a", "--b", "--c", "{\"value1\" : 1, \"value2\" : 2}\""] sein.Beachten Sie, dass VS Code diese Einstellung beim Debugging ignoriert, da stattdessen Argumente aus Ihrer ausgewählten Debugging-Konfiguration in launch.json verwendet werden. |
| venvFolders | [] |
Pfade zu Ordnern, in denen virtuelle Umgebungen erstellt werden. Abhängig vom verwendeten Virtualisierungstool kann dies das Projekt selbst sein: ${workspaceFolder}, oder separate Ordner für alle virtuellen Umgebungen nebeneinander: .\envs, ~/.virtualenvs usw. |
Debugger-Einstellungen
Allgemeines Debugging
| Einstellung (python.debugpy.) |
Standard | Beschreibung | Siehe auch |
|---|---|---|---|
| debugJustMyCode | true |
Gibt an, ob der Debugger nur durch benutzerdefinierten Code navigieren soll. Durch Deaktivieren können Sie auch durch Bibliotheksbibliotheken navigieren. | Debugging |
Test-Einstellungen
Allgemeine Tests
| Einstellung (python.testing.) |
Standard | Beschreibung | Siehe auch |
|---|---|---|---|
| autoTestDiscoverOnSaveEnabled | true |
Gibt an, ob die automatische Testerkennung beim Speichern einer Testdatei aktiviert oder deaktiviert werden soll. | Testen |
| cwd | null | Gibt ein optionales Arbeitsverzeichnis für Tests an. | Testen |
| debugPort | 3000 |
Portnummer, die für das Debugging von Unittest-Tests verwendet wird. | Testen |
| promptToConfigure | true |
Gibt an, ob VS Code aufgefordert werden soll, ein Testframework zu konfigurieren, wenn potenzielle Tests erkannt werden. | Testen |
unittest-Framework
| Einstellung (python.testing.) |
Standard | Beschreibung | Siehe auch |
|---|---|---|---|
| unittestArgs | ["-v", "-s", ".", "-p", "*test*.py"] |
Argumente, die an unittest übergeben werden, wobei jedes Element auf oberster Ebene, das durch ein Leerzeichen getrennt ist, ein separates Element in der Liste ist. | Testen |
| unittestEnabled | false |
Gibt an, ob unittest für Tests aktiviert ist. | Testen |
pytest-Framework
| Einstellung (python.testing.) |
Standard | Beschreibung | Siehe auch |
|---|---|---|---|
| pytestArgs | [] |
Argumente, die an pytest übergeben werden, wobei jedes Element auf oberster Ebene, das durch ein Leerzeichen getrennt ist, ein separates Element in der Liste ist. Beim Debuggen von Tests mit installiertem pytest-cov fügen Sie --no-cov zu diesen Argumenten hinzu. |
Testen |
| pytestEnabled | false |
Gibt an, ob pytest für Tests aktiviert ist. | Testen |
| pytestPath | "pytest" |
Pfad zu pytest. Verwenden Sie einen vollständigen Pfad, wenn pytest außerhalb der aktuellen Umgebung liegt. | Testen |
Codeanalyse-Einstellungen
IntelliSense-Engine-Einstellungen
Hinweis: Wenn Sie Ihre Spracheinstellung nie geändert haben, ist Ihre Sprache auf Pylance über den Wert "Standard" eingestellt.
| Einstellung (python.) |
Standard | Beschreibung |
|---|---|---|
| languageServer | Standard | Definiert die Art des Sprachservers (Standard, Pylance, Jedi und None). |
Python-Sprachserver-Einstellungen
Pylance-Sprachserver
Die Spracheinstellungen gelten, wenn python.languageServer auf Pylance oder Default gesetzt ist. Wenn Sie Schwierigkeiten mit dem Sprachserver haben, siehe Fehlerbehebung im Repository des Sprachservers.
| Einstellung (python.analysis.) |
Standard | Beschreibung | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| aiCodeActions | true | Ob spezifische KI-gestützte Codeaktionen aktiviert werden sollen. Erfordert, dass die Erweiterung GitHub Copilot Chat aktiviert ist. Akzeptierter Wert ist ein Objekt mit einer Codeaktion als Schlüssel und einem booleschen Wert. Verfügbare Codeaktionen als Schlüssel
{"implementAbstractClasses": true} |
|||||||||||||||
| autoFormatStrings | false | Ob beim Tippen von "{" innerhalb eines Strings automatisch ein "f" vorangestellt wird. | |||||||||||||||
| autoImportCompletions | false | Steuert das Angebot von Auto-Importen bei Vervollständigungen. Verfügbare Werte sind true und false. |
|||||||||||||||
| autoIndent | true | Ob die Einrückung beim Tippen von Python-Code automatisch basierend auf der Sprachsemantik angepasst werden soll. Akzeptierte Werte sind true oder false. |
|||||||||||||||
| autoSearchPaths | true | Gibt an, ob Suchpfade basierend auf vordefinierten Namen (wie src) automatisch hinzugefügt werden sollen. Verfügbare Werte sind true und false. |
|||||||||||||||
| completeFunctionParens | false | Fügt Klammern zu Funktionsvervollständigungen hinzu. Akzeptierte Werte sind true und false. |
|||||||||||||||
| diagnosticMode | openFilesOnly | Gibt an, welche Code-Dateien der Sprachserver auf Probleme analysiert. Verfügbare Werte sind workspace und openFilesOnly. |
|||||||||||||||
| diagnosticSeverityOverrides | {} | Ermöglicht einem Benutzer, die Schweregrade für einzelne Diagnosen zu überschreiben. Für jede Regel sind die verfügbaren Schweregrade error (rote Wellenlinie), warning (gelbe Wellenlinie), information (blaue Wellenlinie) und none (Regel deaktiviert).Informationen zu den Schlüsseln, die für die Regeln zur Diagnose-Schwere verwendet werden, finden Sie im Abschnitt Regeln zur Diagnose-Schwere unten. |
|||||||||||||||
| enableEditableInstalls | false |
Ermöglicht eine verbesserte IntelliSense-Unterstützung, indem Importpfade für Pakete aufgelöst werden, die im bearbeitbaren Modus installiert sind (pip install -e .), wie in PEP 660 definiert. |
|||||||||||||||
| exclude | [] | Pfade zu Verzeichnissen oder Dateien, die nicht in die Analyse einbezogen werden sollen. Diese überschreiben die Verzeichnisse, die unter der Einstellung python.analysis.include aufgeführt sind, und ermöglichen den Ausschluss bestimmter Unterverzeichnisse.Beachten Sie, dass Dateien, die in dieser Einstellung exclude aufgeführt sind, möglicherweise immer noch in die Analyse einbezogen werden, wenn sie von Quelldateien referenziert/importiert werden, die nicht in der ausgeschlossenen Liste stehen.Pfade können Platzhalterzeichen wie ** (ein Verzeichnis oder mehrere Verzeichnisebenen), * (eine Zeichenfolge aus null oder mehr Zeichen) oder ? (ein einzelnes Zeichen) enthalten.Wenn keine Ausschluss-Pfade angegeben sind, schließt Pylance automatisch Folgendes aus: **/node_modules, **/\_\_pycache\_\_, .git und alle Verzeichnisse mit virtuellen Umgebungen. |
|||||||||||||||
| extraPaths | [] | Gibt zusätzliche Suchpfade für die Importauflösung an. Akzeptiert Pfade, die als Zeichenfolgen angegeben und durch Kommas getrennt sind, wenn mehrere Pfade vorhanden sind. Beispiel: ["Pfad 1","Pfad 2"]. |
|||||||||||||||
| importFormat | absolute | Definiert das Standardformat beim automatischen Import von Modulen. Akzeptierte Werte sind absolute oder relative. |
|||||||||||||||
| include | [] | Pfade zu Verzeichnissen oder Dateien, die in die Analyse einbezogen werden sollen. Wenn keine Pfade angegeben sind, verwendet Pylance standardmäßig das Verzeichnis, das den Arbeitsbereich-Root enthält. Pfade können Platzhalterzeichen wie ** (ein Verzeichnis oder mehrere Verzeichnisebenen), * (eine Zeichenfolge aus null oder mehr Zeichen) oder ? (ein einzelnes Zeichen) enthalten. |
|||||||||||||||
| fixAll | [] |
Eine Liste von Codeaktionen, die ausgeführt werden sollen, wenn der Befehl Alle beheben oder die Codeaktion source.fixAll ausgeführt wird.Akzeptierte Werte in dieser Liste
|
|||||||||||||||
| includeAliasesFromUserFiles | false | Ob Alias-Symbole aus Benutzerdateien in Auto-Import-Vorschlägen und in der Schnelle-Korrektur "Import hinzufügen" enthalten sein sollen. Wenn deaktiviert, bietet Pylance den Importvorschlag von dort an, wo das Symbol definiert ist. Wenn aktiviert, bietet es auch Importvorschläge aus Dateien an, in denen das Symbol importiert (d. h. als Alias) wurde. Verfügbare Werte sind true und false. |
|||||||||||||||
| ignore | [] | Pfade zu Verzeichnissen oder Dateien, deren Diagnoseausgaben (Fehler und Warnungen) unterdrückt werden sollen, auch wenn sie eine einbezogene Datei sind oder sich innerhalb des transitiven Abschlusses einer einbezogenen Datei befinden. Pfade können Platzhalterzeichen wie ** (ein Verzeichnis oder mehrere Verzeichnisebenen), * (eine Zeichenfolge aus null oder mehr Zeichen) oder ? (ein einzelnes Zeichen) enthalten.Wenn kein Wert angegeben ist, wird der Wert von python.linting.ignorePatterns (falls gesetzt) verwendet. |
|||||||||||||||
| indexing | true | Wird verwendet, um anzugeben, ob Pylance beim Start Benutzerdateien sowie installierte Drittanbieterbibliotheken indizieren soll, um einen vollständigeren Satz von Symbolen für Funktionen wie Auto-Importe, Schnelle Korrekturen, Auto-Vervollständigungen usw. bereitzustellen. Akzeptierte Werte sind true oder false.Wenn auf true gesetzt, indiziert Pylance standardmäßig Top-Level-Symbole von installierten Paketen (d. h. Symbole in __all__ unter package/__init__.py) sowie alle Symbole aus bis zu 2000 Benutzerdateien.Wenn auf false gesetzt, zeigt Pylance nur Symbole an, die bereits in Dateien referenziert oder verwendet wurden, die zuvor im Editor geöffnet oder von diesem geladen wurden. |
|||||||||||||||
| inlayHints.callArgumentNames | aus | Steuert die Anzeige von Inlay-Hinweisen für Aufrufargumentnamen. Verfügbare Werte sind off, partial und all.Wenn auf off gesetzt, werden keine Inlay-Hinweise angezeigt. Wenn auf partial gesetzt, sind Hinweise für positionelle und nur-Keyword-Parameter deaktiviert. Wenn auf all gesetzt, werden Hinweise für alle Parameter angezeigt. |
|||||||||||||||
| inlayHints.functionReturnTypes | false | Ob Inlay-Hinweise für Funktionsrückgabetypen angezeigt werden sollen. Akzeptierte Werte sind true oder false. |
|||||||||||||||
| inlayHints.pytestParameters | false | Ob Inlay-Hinweise für pytest-Fixture-Argumenttypen angezeigt werden sollen. Akzeptierte Werte sind true oder false. |
|||||||||||||||
| inlayHints.variableTypes | false | Ob Inlay-Hinweise für Variablentypen angezeigt werden sollen. Akzeptierte Werte sind true oder false. |
|||||||||||||||
| languageServerMode | default | Bietet vordefinierte Konfigurationen zur Optimierung der Pylance-Leistung basierend auf den Entwicklungsanforderungen. Verfügbare Werte sind default und light.Wenn auf default gesetzt, liefert der Sprachserver ausreichende Funktionalität für die meisten Maschinen, ohne das System zu überlasten.Wenn auf light gesetzt, aktiviert es eine leichtgewichtige, speichereffiziente Einrichtung. Dieser Modus deaktiviert verschiedene Funktionen, damit Pylance mehr wie ein stromlinienförmiger Texteditor funktioniert, und ist ideal für diejenigen, die nicht die volle Bandbreite der IntelliSense-Funktionen benötigen und Pylance so ressourcenschonend wie möglich wünschen.Standardwerte werden von jedem Modus wie folgt überschrieben
|
|||||||||||||||
| logLevel | Error |
Gibt die Stufe des Protokollierens an, die vom Sprachserver durchgeführt werden soll. Die möglichen Protokollierungsstufen, mit zunehmender Informationsmenge, sind Error, Warning, Information und Trace. |
|||||||||||||||
| nodeArguments | "--max-old-space-size=8192" |
Gibt benutzerdefinierte Argumente direkt an die benutzerdefinierte Node.js-ausführbare Datei an, die von python.analysis.nodeExecutable definiert wird. Dies kann verwendet werden, um mehr Speicher zuzuweisen oder das Verhalten von Node.js zu konfigurieren.Akzeptiert eine Liste von von Node.js unterstützten Argumenten. Jedes "arg=value" sollte in der Liste durch Kommas getrennt sein.Anwendungsbeispiel: "python.analysis.nodeArguments": ["--max-old-space-size=8192"] |
|||||||||||||||
| nodeExecutable | "" |
Gibt die zu verwendende Node.js-ausführbare Datei an, wodurch Pylance mehr Speicher zuweisen kann. Akzeptierte Werte sind Zeichenfolgen mit Pfaden zu ausführbaren Dateien, eine leere Zeichenfolge oder "auto".Wenn auf eine leere Zeichenfolge gesetzt, verwendet Pylance die Node.js-ausführbare Datei von VS Code. Wenn auf "auto" gesetzt, lädt es automatisch Node.js herunter. |
|||||||||||||||
| packageIndexDepths | [] | Wird verwendet, um zu überschreiben, wie viele Ebenen unter installierten Paketen pro Paket indiziert werden sollen. Standardmäßig werden nur Top-Level-Module indiziert (Tiefe = 1). Um Untermodule zu indizieren, erhöhen Sie die Tiefe um 1 für jede Ebene von Untermodulen, die Sie indizieren möchten. Akzeptierte Werte sind Tupel von Objekten wie {"name": "Paketname (str)", "depth": "zu scannende Tiefe (int)", "includeAllSymbols": "ob alle Symbole enthalten sein sollen (bool)"}.Wenn includeAllSymbols auf false gesetzt ist, werden nur Symbole in __all__ jedes Pakets einbezogen. Wenn es auf true gesetzt ist, indiziert Pylance jedes Modul/Top-Level-Symboldeklarationen in der Datei.Anwendungsbeispiel: [{"name": "sklearn", "depth": 2, "includeAllSymbols": true}, {"name": "matplotlib", "depth": 3, "includeAllSymbols": false}] |
|||||||||||||||
| stubPath | ./typings | Gibt einen Pfad zu einem Verzeichnis an, das benutzerdefinierte Typ-Stubs enthält. Die Typ-Stub-Datei(en) jedes Pakets werden in seinem eigenen Unterverzeichnis erwartet. | |||||||||||||||
| typeCheckingMode | aus | Gibt die Stufe der Typüberprüfungsanalyse an, die durchgeführt werden soll. Verfügbare Werte sind off, basic und strict.Wenn auf off gesetzt, wird keine Typüberprüfungsanalyse durchgeführt; es werden Diagnosen für nicht aufgelöste Importe/Variablen ausgegeben.Wenn auf basic gesetzt, werden Regeln, die nichts mit der Typüberprüfung zu tun haben (alle Regeln in off), sowie grundlegende Typüberprüfungsregeln verwendet.Wenn auf strict gesetzt, werden alle Typüberprüfungsregeln mit der höchsten Fehlerschwere (einschließlich aller Regeln in den Kategorien off und basic) verwendet. |
|||||||||||||||
| useLibraryCodeForTypes | true | Analysiert den Quellcode eines Pakets, wenn kein Typ-Stub gefunden wird. Verfügbare Werte sind true und false. |
|||||||||||||||
| userFileIndexingLimit | 2000 | Legt die maximale Anzahl von Benutzerdateien fest, die Pylance im Arbeitsbereich indizieren soll. Wenn auf -1 gesetzt, indiziert Pylance alle Dateien. Beachten Sie, dass das Indizieren von Dateien eine leistungshungrige Aufgabe ist. |
Regeln zur Diagnose-Schwere
Dieser Abschnitt beschreibt alle verfügbaren Regeln, die mit der Einstellung python.analysis.diagnosticSeverityOverrides angepasst werden können, wie im folgenden Beispiel gezeigt.
{
"python.analysis.diagnosticSeverityOverrides": {
"reportUnboundVariable": "information",
"reportImplicitStringConcatenation": "warning"
}
}
| Wert | Beschreibung |
|---|---|
| reportAssertAlwaysTrue | Diagnosen für 'assert'-Anweisungen, die wahrscheinlich immer wahr sind. Dies kann auf einen Programmierfehler hinweisen. |
| reportCallInDefaultInitializer | Diagnosen für Funktionsaufrufe innerhalb eines Standardwert-Initialisierungsausdrucks. Solche Aufrufe können teure Operationen verbergen, die während der Modulinitialisierung durchgeführt werden. |
| reportConstantRedefinition | Diagnosen für Versuche, Variablen neu zu definieren, deren Namen nur aus Großbuchstaben mit Unterstrichen und Ziffern bestehen. |
| reportDuplicateImport | Diagnosen für ein importiertes Symbol oder Modul, das mehr als einmal importiert wird. |
| reportFunctionMemberAccess | Diagnosen für Mitgliedszugriffe auf Funktionen. |
| reportGeneralTypeIssues | Diagnosen für allgemeine Typinkonsistenzen, nicht unterstützte Operationen, Argument-/Parameterübereinstimmungen usw. Dies deckt alle grundlegenden Typüberprüfungsregeln ab, die nicht von anderen Regeln abgedeckt werden. Es enthält keine Syntaxfehler. |
| reportImportCycles | Diagnosen für zyklische Importketten. Dies sind keine Fehler in Python, aber sie verlangsamen die Typanalyse und weisen oft auf Probleme mit der Architekturschichtung hin. Im Allgemeinen sollten sie vermieden werden. |
| reportImplicitStringConcatenation | Diagnosen für zwei oder mehr aufeinanderfolgende Zeichenfolgenliterale, die auf eine implizite Verkettung hinweisen. Dies gilt als schlechte Praxis und verbirgt oft Fehler wie fehlende Kommas. |
| reportIncompatibleMethodOverride | Diagnosen für Methoden, die eine Methode mit demselben Namen in einer Basisklasse in einer inkompatiblen Weise überschreiben (falsche Anzahl von Parametern, inkompatible Parametertypen oder inkompatibler Rückgabetyp). |
| reportIncompatibleVariableOverride | Diagnosen für Klassvariablendeklarationen, die ein Symbol mit demselben Namen in einer Basisklasse mit einem Typ überschreiben, der mit dem Basissymboltyp inkompatibel ist. |
| reportInvalidStringEscapeSequence | Diagnosen für ungültige Escape-Sequenzen, die in Zeichenfolgenliteralen verwendet werden. Die Python-Spezifikation gibt an, dass solche Sequenzen in zukünftigen Versionen einen Syntaxfehler erzeugen. |
| reportInvalidStubStatement | Diagnosen für Anweisungen, die nicht in einer Stub-Datei erscheinen sollten. |
| reportInvalidTypeVarUse | Diagnosen für unsachgemäße Verwendung von Typvariablen in einer Funktionssignatur. |
| reportMissingImports | Diagnosen für Importe, für die keine entsprechende importierte Python-Datei oder Stub-Datei vorhanden ist. |
| reportMissingModuleSource | Diagnosen für Importe, für die keine entsprechende Quelldatei vorhanden ist. Dies geschieht, wenn ein Typ-Stub gefunden wird, aber die Modulquelldatei nicht gefunden wurde, was darauf hindeutet, dass der Code zur Laufzeit mit dieser Ausführungsumgebung fehlschlagen kann. Die Typüberprüfung erfolgt unter Verwendung des Typ-Stubs. |
| reportMissingTypeArgument | Diagnosen dafür, wenn eine generische Klasse ohne explizite oder implizite Typargumente verwendet wird. |
| reportMissingTypeStubs | Diagnosen für Importe, für die keine entsprechende Typ-Stub-Datei vorhanden ist (weder eine Typeshed-Datei noch ein benutzerdefinierter Typ-Stub). Der Typchecker benötigt Typ-Stubs, um seine Arbeit bei der Analyse bestmöglich zu erledigen. |
| reportOptionalCall | Diagnosen für den Versuch, eine Variable mit einem Optional-Typ aufzurufen. |
| reportOptionalContextManager | Diagnosen für den Versuch, einen Optional-Typ als Kontextmanager zu verwenden (als Parameter einer with-Anweisung). |
| reportOptionalIterable | Diagnosen für den Versuch, einen Optional-Typ als iterierbaren Wert zu verwenden (z. B. in einer for-Schleife). |
| reportOptionalMemberAccess | Diagnosen für den Versuch, auf ein Mitglied einer Variablen mit einem Optional-Typ zuzugreifen. |
| reportOptionalOperand | Diagnosen für den Versuch, einen Optional-Typ als Operand eines binären oder unären Operators (wie '+', '==', 'or', 'not') zu verwenden. |
| reportOptionalSubscript | Diagnosen für den Versuch, eine Variable mit einem Optional-Typ zu subscripten (zu indizieren). |
| reportPrivateUsage | Diagnosen für fehlerhafte Verwendung von privaten oder geschützten Variablen oder Funktionen. Geschützte Klassenmitglieder beginnen mit einem einzelnen Unterstrich _ und können nur von Unterklassen zugegriffen werden. Private Klassenmitglieder beginnen mit einem doppelten Unterstrich, enden aber nicht mit einem doppelten Unterstrich und können nur innerhalb der deklarierenden Klasse aufgerufen werden. Variablen und Funktionen, die außerhalb einer Klasse deklariert werden, gelten als privat, wenn ihre Namen mit einem einzelnen oder doppelten Unterstrich beginnen, und sie können außerhalb des deklarierenden Moduls nicht aufgerufen werden. |
| reportPropertyTypeMismatch | Diagnosen für Eigenschaften, bei denen der Typ des an den Setter übergebenen Werts nicht dem vom Getter zurückgegebenen Wert zuweisbar ist. Solche Inkonsistenzen verstoßen gegen den beabsichtigten Verwendungszweck von Eigenschaften, die wie Variablen fungieren sollen. |
| reportSelfClsParameterName | Diagnosen für einen fehlenden oder falsch benannten „self“-Parameter in Instanzmethoden und „cls“-Parameter in Klassenmethoden. Instanzmethoden in Metaklassen (Klassen, die von „type“ abgeleitet sind) dürfen „cls“ für Instanzmethoden verwenden. |
| reportUndefinedVariable | Diagnosen für undefinierte Variablen. |
| reportUnboundVariable | Diagnosen für ungebundene und möglicherweise ungebundene Variablen. |
| reportUnknownArgumentType | Diagnosen für Aufrufargumente von Funktionen oder Methoden, die einen unbekannten Typ haben. |
| reportUnknownLambdaType | Diagnosen für Eingabe- oder Rückgabeparameter für Lambdas, die einen unbekannten Typ haben. |
| reportUnknownMemberType | Diagnosen für Klassen- oder Instanzvariablen, die einen unbekannten Typ haben. |
| reportUnknownParameterType | Diagnosen für Eingabe- oder Rückgabeparameter von Funktionen oder Methoden, die einen unbekannten Typ haben. |
| reportUnknownVariableType | Diagnosen für Variablen, die einen unbekannten Typ haben. |
| reportUnnecessaryCast | Diagnosen für 'cast'-Aufrufe, die statisch als unnötig bestimmt werden. Solche Aufrufe deuten manchmal auf einen Programmierfehler hin. |
| reportUnnecessaryIsInstance | Diagnosen für 'isinstance'- oder 'issubclass'-Aufrufe, bei denen das Ergebnis statisch immer als wahr oder immer als falsch bestimmt wird. Solche Aufrufe deuten oft auf einen Programmierfehler hin. |
| reportUnusedCallResult | Diagnosen für Aufrufausdrücke, deren Ergebnisse nicht verbraucht werden und nicht None sind. |
| reportUnusedClass | Diagnosen für eine Klasse mit einem privaten Namen (beginnt mit einem Unterstrich), auf die nicht zugegriffen wird. |
| reportUnusedCoroutine | Diagnosen für Aufrufausdrücke, die eine Coroutine zurückgeben und deren Ergebnisse nicht verbraucht werden. |
| reportUnusedFunction | Diagnosen für eine Funktion oder Methode mit einem privaten Namen (beginnt mit einem Unterstrich), auf die nicht zugegriffen wird. |
| reportUnusedImport | Diagnosen für ein importiertes Symbol, das in dieser Datei nicht referenziert wird. |
| reportUnusedVariable | Diagnosen für eine Variable, auf die nicht zugegriffen wird. |
| reportUnsupportedDunderAll | Diagnosen für nicht unterstützte Operationen, die auf __all__ durchgeführt werden. |
| reportWildcardImportFromLibrary | Diagnosen für einen Wildcard-Import aus einer externen Bibliothek. |
AutoComplete-Einstellungen
| Einstellung (python.autoComplete.) |
Standard | Beschreibung | Siehe auch |
|---|---|---|---|
| extraPaths | [] |
Gibt Speicherorte von zusätzlichen Paketen an, für die Autocomplete-Daten geladen werden sollen. | Bearbeiten |
Vordefinierte Variablen
Die Einstellungen der Python-Erweiterung unterstützen vordefinierte Variablen. Ähnlich wie bei den allgemeinen VS Code-Einstellungen verwenden Variablen die Syntax ${variableName}. Insbesondere unterstützt die Erweiterung die folgenden Variablen
-
${cwd} - das aktuelle Arbeitsverzeichnis des Task-Runners beim Start
-
${workspaceFolder} - der Pfad des Ordners, der in VS Code geöffnet ist
-
${workspaceRootFolderName} - der Name des Ordners, der in VS Code geöffnet ist, ohne Schrägstriche (/)
-
${workspaceFolderBasename} - der Name des Ordners, der in VS Code geöffnet ist, ohne Schrägstriche (/)
-
${file} - die aktuell geöffnete Datei
-
${relativeFile} - die aktuell geöffnete Datei relativ zu
workspaceFolder -
${relativeFileDirname} - das Verzeichnis der aktuell geöffneten Datei relativ zu
workspaceFolder -
${fileBasename} - der Basisname der aktuell geöffneten Datei
-
${fileBasenameNoExtension} - der Basisname der aktuell geöffneten Datei ohne Dateierweiterung
-
${fileDirname} - das Verzeichnis der aktuell geöffneten Datei
-
${fileExtname} - die Erweiterung der aktuell geöffneten Datei
-
${lineNumber} - die aktuelle Zeilennummer in der aktiven Datei
-
${selectedText} - der aktuell ausgewählte Text in der aktiven Datei
-
${execPath} - der Pfad zur laufenden VS Code-ausführbaren Datei
Weitere Informationen zu vordefinierten Variablen und Anwendungsbeispielen finden Sie in der Variablenreferenz in der allgemeinen VS Code-Dokumentation.
Nächste Schritte
- Python-Umgebungen - Steuert, welcher Python-Interpreter zum Bearbeiten und Debuggen verwendet wird.
- Code bearbeiten – Erfahren Sie mehr über Autovervollständigung, IntelliSense, Formatierung und Refactoring für Python.
- Linting - Aktivieren, konfigurieren und verwenden Sie eine Vielzahl von Python-Lintern.
- Debugging - Erfahren Sie, wie Sie Python lokal und remote debuggen.
- Testen - Konfigurieren Sie Testumgebungen und entdecken, führen Sie Tests aus und debuggen Sie sie.