Die Python-Standardbibliothek

You are here:

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.