Die Python-Standardbibliothek ist eine Sammlung von Modulen, die direkt mit der Python-Installation mitgeliefert werden. Diese Module bieten eine breite Palette von Funktionen und Funktionalitäten, die in vielen verschiedenen Anwendungsfällen nützlich sein können. In diesem Kapitel werde ich einige der interessantesten und nützlichsten Module der Standardbibliothek vorstellen und Beispiele für ihre Verwendung geben.
`os`
Das `os`-Modul stellt Funktionen für die Interaktion mit dem Betriebssystem bereit, z. B. für das Navigieren im Dateisystem, das Erstellen und Löschen von Verzeichnissen sowie das Ausführen von Systembefehlen.
import os
# Aktuelles Verzeichnis ausgeben
print(os.getcwd())
# In ein anderes Verzeichnis wechseln
os.chdir('..')
# Ein Verzeichnis erstellen
os.makedirs('new_directory')
# Ein Verzeichnis löschen
os.rmdir('new_directory')
`re`
Das `re`-Modul ermöglicht die Verwendung von regulären Ausdrücken für die Verarbeitung von Textdaten. Reguläre Ausdrücke sind eine leistungsfähige Methode zur Suche, Validierung und Manipulation von Textstrings.
import re
text = "Python is an amazing programming language."
# Suche nach einem Muster im Text
pattern = r"\bamazing\b"
result = re.search(pattern, text)
print(result.group()) # Ausgabe: amazing
# Ersetze das Muster durch einen anderen Text
replacement = "awesome"
new_text = re.sub(pattern, replacement, text)
print(new_text) # Ausgabe: Python is an awesome programming language.
`datetime`
Das `datetime`-Modul bietet Klassen für die Arbeit mit Datums- und Zeitinformationen, z. B. für die Erstellung von Zeitstempeln, das Hinzufügen und Subtrahieren von Zeitintervallen und das Umwandeln von Zeitangaben in verschiedene Formate.
import datetime
# Aktuelle Zeit und Datum
now = datetime.datetime.now()
print(now)
# Zeitintervalle hinzufügen
one_week = datetime.timedelta(weeks=1)
next_week = now + one_week
print(next_week)
# Datums- und Zeitangaben formatieren
formatted = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted)
`json`
Das `json`-Modul ermöglicht das Lesen und Schreiben von JSON-Daten, einem weit verbreiteten Format zum Austausch von strukturierten Daten zwischen Anwendungen.
import json
# JSON-Daten in einen Python-Dictionary umwandeln
json_data = '{"name": "John", "age": 30, "city": "New York"}'
python_data = json.loads(json_data)
print(python_data) # Ausgabe: {'name': 'John', 'age': 30, 'city': 'New York'}
# Python-Dictionary in JSON-Daten umwandeln
new_json_data = json.dumps(python_data)
print(new_json_data) # Ausgabe: {"name": "John", "age": 30, "city": "New York"}
Die Python-Standardbibliothek bietet zahlreiche nützliche Module, die den Entwicklungsprozess erleichtern und die Notwendigkeit, externe Pakete zu installieren, reduzieren. Die oben genannten Module sind nur einige Beispiele für die Vielfalt der Funktionen, die die Standardbibliothek bietet.
`collections`
Das `collections`-Modul bietet erweiterte Datenstrukturen wie `Counter`, `deque`, `defaultdict` und `OrderedDict`, die in vielen Situationen nützlich sein können.
import collections
# Counter: Häufigkeit von Elementen in einer Liste zählen
data = [1, 2, 3, 2, 1, 3, 1, 1, 2, 3, 3, 3]
counter = collections.Counter(data)
print(counter) # Ausgabe: Counter({1: 4, 2: 3, 3: 5})
# defaultdict: Standardwert für nicht existierende Schlüssel festlegen
default_dict = collections.defaultdict(int)
default_dict["missing_key"] += 1
print(default_dict) # Ausgabe: defaultdict(<class 'int'>, {'missing_key': 1})
`itertools`
Das `itertools`-Modul stellt Funktionen für die effiziente Iteration über verschiedene Arten von Datenstrukturen und Sequenzen zur Verfügung. Es bietet auch Funktionen für die Erstellung von Kombinationen, Permutationen und Produktmengen.
import itertools
# itertools.cycle: Endlos wiederholende Iteration über eine Sequenz
counter = 0
for value in itertools.cycle([1, 2, 3]):
print(value, end=" ")
counter += 1
if counter > 10:
break # Ausgabe: 1 2 3 1 2 3 1 2 3 1 2
# itertools.permutations: Alle möglichen Permutationen einer Sequenz erstellen
for p in itertools.permutations("ABC"):
print("".join(p)) # Ausgabe: ABC ACB BAC BCA CAB CBA
`math`
Das `math`-Modul bietet grundlegende mathematische Funktionen wie trigonometrische Funktionen, Exponential- und Logarithmusfunktionen, Quadratwurzel und viele mehr.
import math
# Berechne die Quadratwurzel einer Zahl
sqrt = math.sqrt(16)
print(sqrt) # Ausgabe: 4.0
# Berechne den natürlichen Logarithmus einer Zahl
log = math.log(2.71)
print(log) # Ausgabe: 0.9969486348916096
Die Python-Standardbibliothek stellt für Python-Entwickler ein beeindruckendes und kraftvolles Werkzeug dar. Obwohl es noch zahlreiche weitere Pakete und Module gibt, demonstrieren die hier präsentierten Beispiele eindrucksvoll die vielseitigen und effizienten Funktionen, welche die Entwicklung von Python-Anwendungen erheblich vereinfachen und beschleunigen.