04 Kommentare
# Line comment
'''
Multi
line
comment
'''
"""
Multi
line
comment
(wird hauptsächlich für Docstrings verwendet)
"""
Dies ist das Google-Dokumentationsformat. Es ist einfach zu lesen und wird oft in größeren Projekten verwendet.
def addiere(a: int, b: int) -> int:
"""
Addiert zwei Zahlen und gibt das Ergebnis zurück.
Args:
a (int): Die erste Zahl.
b (int): Die zweite Zahl.
Returns:
int: Die Summe der beiden Zahlen.
Raises:
TypeError: Falls einer der Eingaben kein Integer ist.
"""
if not isinstance(a, int) or not isinstance(b, int):
raise TypeError("Beide Werte müssen vom Typ int sein.")
return a + b
Vorteile:
Args, Returns, Raises)def dividiere(a: float, b: float) -> float:
"""
Dividiert zwei Zahlen.
Parameters
----------
a : float
Die erste Zahl.
b : float
Die zweite Zahl.
Returns
-------
float
Das Ergebnis der Division.
Raises
------
ZeroDivisionError
Falls `b` gleich Null ist.
TypeError
Falls einer der Eingaben kein Float oder Int ist.
"""
if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
raise TypeError("Beide Werte müssen Zahlen sein.")
if b == 0:
raise ZeroDivisionError("Division durch Null ist nicht erlaubt.")
return a / b
Vorteile:
NumPy, SciPy, Pandas)Parameters, Returns, Raises)Dieses Format wird in Sphinx-Dokumentationen häufig verwendet.
def multipliziere(a: float, b: float) -> float:
"""
Multipliziert zwei Zahlen.
:param a: Die erste Zahl.
:type a: float
:param b: Die zweite Zahl.
:type b: float
:return: Das Produkt von a und b.
:rtype: float
:raises TypeError: Falls einer der Eingaben kein Float ist.
"""
if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
raise TypeError("Beide Werte müssen Zahlen sein.")
return a * b
Vorteile:
:param, :return, :rtype, :raises)| Format | Vorteile | Geeignet für |
|---|---|---|
| Einfach zu lesen, klare Struktur | Allgemeine Python-Projekte | |
| NumPy | Wissenschaftliche Standards | Data Science, ML, Forschung |
| reST (Sphinx) | Unterstützt in automatisierten Dokus | Große Dokumentationen, APIs |