Was macht python-code-style?
Python-Code-Stil, Linting, Formatierung, Namenskonventionen und Dokumentationsstandards. Verwenden Sie dies beim Schreiben von neuem Code, Überprüfen von Stil, Konfigurieren von Linters, Schreiben von Docstrings oder Festlegen von Projektstandards.
Verwendung
- Stil-Richtlinien: PEP 8, Black-kompatible Formatierung, benannte Konstanten und aussagekräftige Variablennamen.
- Linting: Nutzen Sie
ruffoderflake8für Fehlererkennung. - Formatierung:
blackundisortfür automatische Formatierung. - Namenskonventionen:
- Klassen:
CamelCase - Funktionen/Methoden:
snake_case - Konstanten:
UPPER_CASE - Private Attribute: führender Unterstrich
_
- Klassen:
- Dokumentation: Docstrings im Google-Stil mit
""""für öffentliche Funktionen, Klassen und Module. - Typannotationen: Verwenden Sie
typingoderfrom __future__ import annotations.
Befehle
| Befehl | Beschreibung |
|---|---|
black . | Formatiere alle Python-Dateien |
ruff check . | Lint-Prüfung mit Ruff |
mypy . | Typüberprüfung mit MyPy |
isort . | Sortiere Importe |
Konfiguration
Fügen Sie folgende Konfiguration in pyproject.toml hinzu:
[tool.black]
line-length = 88
target-version = ['py311']
[tool.ruff]
select = ['E', 'F', 'I', 'N']
ignore = []
[tool.isort]
profile = 'black'
[tool.mypy]
strict = true
python_version = '3.11'
Beispiele
# style_guidelines.py
from typing import Optional
def greet(name: str, greeting: Optional[str] = None) -> str:
"""Begrüße eine Person mit optionalem Gruß.
Args:
name: Der Name der Person.
greeting: Ein optionaler Gruß (Standard: 'Hallo').
Returns:
Ein formatierter Grußstring.
"""
if greeting is None:
greeting = "Hallo"
return f"{greeting}, {name}!"
Hinweis: Stellen Sie sicher, dass alle Linter und Formatierer in Ihrer CI/CD-Pipeline ausgeführt werden.