PyCharm-Codebearbeitung

Als professionelle Python-IDE bietet PyCharm leistungsstarke Codebearbeitungsfunktionen.

Dieses Kapitel beschreibt die Kernfunktionen der Codebearbeitung im Detail, einschließlich intelligenter Vervollständigung, Shortcut-Operationen, Code-Refactoring und anderer effizienter Entwicklungstechniken.


Grundlegende Bearbeitungsfunktionen

Codevervollständigung

PyCharm bietet mehrere intelligente Vervollständigungsmethoden:

Vervollständigungstyp Auslösemethode Beschreibung
Grundlegende Vervollständigung Ctrl + Space(Win/Linux)
⌘ + Space(Mac)
Zeigt Vorschläge für Variablen, Funktionen, Klassen usw. an.
Intelligente Typvervollständigung Ctrl + Shift + Space Empfiehlt präzisere Typen basierend auf dem Kontext
Dateinamen-Vervollständigung Wird automatisch beim Eingeben eines Pfads ausgelöst Vervollständigt Dateipfade schnell
Dynamische Vorlagenvervollständigung Abkürzung eingeben (z. B.main + Tab) Schnell Code-Snippets generieren (z. B.if __name__ ==...)

Geben Sieim + Tabein → Vervollständigt automatisch zuimport:

Geben Siefor + Tabein → Erzeugen Sie eine vollständigefor-Schleifenstruktur:


Syntaxhervorhebung

PyCharm färbt Codeelemente automatisch ein:

  • Schlüsselwörter(def, class): blau

  • Zeichenketten: grün

  • Kommentare: grau

  • Syntaxfehler: rote wellenförmige Unterstreichung

Benutzerdefinierte Hervorhebung:

  1. 设置 → 编辑器 → 配色方案(Color Scheme)

  2. Passen Sie die Farben der Python-Syntaxelemente an


Code-Faltung

Aktion Tastenkürzel (Win/Linux) Tastenkürzel (Mac)
Aktuellen Codeblock einklappen Ctrl + - ⌘ + -
Aktuellen Codeblock ausklappen Ctrl + + ⌘ + +
Alle Codeblöcke einklappen Ctrl + Shift + - ⌘ + Shift + -
Alle Codeblöcke ausklappen Ctrl + Shift + + ⌘ + Shift + +

Bewegen Sie die Maus im Editor links neben den Codebereich, um einen nach unten zeigenden Pfeil zu sehen; durch Anklicken lässt sich ebenfalls einklappen:

Code-Strukturen, die die Code-Faltung unterstützen:

  • Funktionen/Methoden

  • Klassendefinitionen

  • Mehrzeilige Kommentare

  • Import-Anweisungsgruppen


Tastenkürzel und effiziente Arbeitsabläufe

Schnellreferenz für gängige Tastenkürzel

Funktion Tastenkürzel (Win/Linux) Tastenkürzel (Mac)
Aktuelle Zeile duplizieren Ctrl + D ⌘ + D
Aktuelle Zeile löschen Ctrl + Y ⌘ + Delete
Zeile verschieben Alt + Shift + ↑/↓ ⌥ + ⇧ + ↑/↓
Vorschläge für Schnellkorrekturen Alt + Enter ⌥ + Enter
Zur Definition springen Ctrl + B ⌘ + B
Parameterhinweise anzeigen Ctrl + P ⌘ + P

Mehrzeilige Bearbeitung und Batch-Operationen

Spaltenauswahlmodus

  1. HaltenAlt(Win) oder⌥(Mac) + Maus ziehen

  2. oder verwendenAlt + Shift + Insertzum Umschalten des Spaltenmodus

Anwendungsszenarien:

# 批量修改多个变量前缀
old_name = 1    →  new_name = 1
old_value = 2   →  new_value = 2

Multi-Cursor-Bearbeitung

  • HaltenAlt+ Mausklick (mehrere Cursor hinzufügen)

  • oderCtrl + G(Win)/ ⌘ + G(Mac) dasselbe Wort auswählen


Codeformatierung und Refactoring

Code automatisch formatieren

  1. Aktuelle Datei formatieren:

    • Ctrl + Alt + L(Win/Linux)

    • ⌥ + ⌘ + L(Mac)

  2. Ausgewählten Code formatieren:

    • Code auswählen → Rechtsklick →Reformat Code

Formatierungsregeln konfigurieren:
设置 → 编辑器 → 代码样式 → Python


Variablen/Funktionen umbenennen (Sicheres Refactoring)

  1. Bezeichner auswählen (Variablen-/Funktionsname)

  2. Rechtsklick → Refactor → Rename

  3. oder TastenkürzelShift + F6

  4. Neuen Namen eingeben → DrückenEnter

Wirkung:

  • Alle Stellen, die auf diesen Bezeichner verweisen, werden synchron aktualisiert

  • Unterstützt dateiübergreifendes Umbenennen


Methode extrahieren

Ausgewähltes Codefragment als neue Methode extrahieren:

  1. Codeblock auswählen

  2. Ctrl + Alt + M(Win)/ ⌘ + ⌥ + M(Mac)

  3. Methodennamen eingeben → Bestätigen

Beispiel

# Vor der Extraktion
def process_data(data):
    cleaned = []
    for item in data:
        if item.is_valid():  # ← Diesen Teil des Codes auswählen
            cleaned.append(item)
    return cleaned

# Nach der Extraktion
def process_data(data):
    cleaned = []
    for item in data:
        if is_valid_item(item):
            cleaned.append(item)
    return cleaned

def is_valid_item(item):  # ← Automatisch generierte neue Methode
    return item.is_valid()

Inline

Methode/Variable an der Aufrufstelle inline setzen:

  1. Setzen Sie den Cursor auf den Methodennamen/die Variable

  2. Ctrl + Alt + N(Win)/ ⌘ + ⌥ + N(Mac)

# 内联前
def calculate_discount(price):
    return price * 0.9

total = calculate_discount(100)  # ← 光标在此行

# 内联后
total = 100 * 0.9  # ← 方法调用被替换为实际代码

Erweiterte Bearbeitungstechniken

Live-Vorlagen

Gängige Codemuster schnell generieren:

  1. Abkürzung eingeben (z. B.iter) → DrückenTab

  2. Voreingestellte Vorlagen:

    • main→ Generierenif __name__ == '__main__'

    • try→ Vollständigen try-except-Block generieren

Benutzerdefinierte Vorlagen:
Settings → Editor → Live Templates

Die Eingabe von iter im Code-Editor zeigt Vorlageninformationen an:


Code-Absichtsaktionen (Alt+Enter)

Code basierend auf dem Kontext schnell korrigieren oder optimieren:

  • Fehlende Pakete automatisch importieren

  • String-Formate konvertieren (f-string / format)

  • Bedingte Ausdrücke optimieren

Operation: Platzieren Sie den Cursor bei der Warnung/dem Vorschlag →Alt + Enter


Zusammenfassung: Effizienter Bearbeitungsworkflow

  1. Schreibphase:

    • Codevervollständigung verwenden (Ctrl + Space) für schnelle Eingabe

    • Dynamische Vorlagen verwenden, um sich wiederholende Strukturen zu erzeugen

  2. Optimierungsphase:

    • Code formatieren (Ctrl + Alt + L)

    • Verwenden SieAlt + EnterProbleme schnell beheben

  3. Refactoring-Phase:

    • Methode extrahieren (Ctrl + Alt + M)

    • Sicheres Umbenennen (Shift + F6)

Andere Erweiterungen