Python - Modules (Deutsch)
Hallo daar, zukünftige Python-Zauberer! Heute werden wir eine aufregende Reise in die Welt der Python-Module antreten. Keine Sorge, wenn du neu bei der Programmierung bist; ich werde dein freundlicher Guide sein und alles Schritt für Schritt erklären. Also, nimm deinen virtuellen Zauberstab (Tastatur) und lass uns einsteigen!
Python-Module
Stell dir vor, du baust ein magisches Schloss (dein Programm). Anstatt alles von Grund auf zu konstruieren, wäre es nicht großartig, wenn du vorgefertigte Türme, Mauern und Tore hätte, die du nur einsetzen könntest? Genau das sind Module in Python - vorgefertigter Code, den du leicht in deine Programme einbinden kannst.
Python-Eingebaute Module
Python kommt mit einem Schatz voller eingebauter Module. Das sind wie magische Zauberformeln, die du sofort verwenden kannst. Lass uns eines ausprobieren!
import random
# Generiere eine zufällige Zahl zwischen 1 und 10
magische_nummer = random.randint(1, 10)
print(f"Deine magische Nummer ist: {magische_nummer}")
In diesem Beispiel verwenden wir das random
-Modul, um eine zufällige Zahl zu generieren. Es ist wie ein Kaninchen aus einem Hut zu ziehen, aber mit Zahlen!
Python-Benutzerdefinierte Module
Während eingebaute Module großartig sind, musst du manchmal deine eigenen magischen Zauberformeln erstellen. Hier kommen benutzerdefinierte Module ins Spiel.
Ein Python-Modul Erstellen
Lass uns ein einfaches Modul namens magic_spells.py
erstellen:
# magic_spells.py
def heben(gegenstand):
return f"{gegenstand} schwebt in der Luft!"
def verschwinden(gegenstand):
return f"{gegenstand} ist in den thin air verschwunden!"
Jetzt haben wir unser eigenes Modul mit zwei magischen Funktionen!
Die import-Anweisung
Um unser neu erstelltes Modul zu verwenden, müssen wir es importieren:
import magic_spells
# Verwende die Funktionen aus unserem Modul
print(magic_spells.heben("Buch"))
print(magic_spells.verschwinden("Kaninchen"))
Output:
Buch schwebt in der Luft!
Kaninchen ist in den thin air verschwunden!
Die from ... import-Anweisung
Manchmal brauchst du nur spezifische Zauberformeln aus einem Modul. Hier kommt from ... import
zum Einsatz:
from magic_spells import heben
# Jetzt können wir heben direkt ohne magic_spells-Präfix verwenden
print(heben("Stuhl"))
Output:
Stuhl schwebt in der Luft!
Die from...import *-Anweisung
Wenn du alle Zauberformeln aus einem Modul importieren möchtest, kannst du from...import *
verwenden:
from magic_spells import *
# Jetzt können wir alle Funktionen direkt verwenden
print(heben("Tisch"))
print(verschwinden("Hut"))
Aber sei vorsichtig mit diesem! Es ist wie die Öffnung von Pandoras Box - du könntest versehentlich bestehende Funktionen überschreiben, wenn sie den gleichen Namen haben.
Die import ... as-Anweisung
Manchmal können Modulnamen lang oder verwirrend sein. Du kannst ihnen einen Spitznamen geben, indem du import ... as
verwendest:
import magic_spells as spells
print(spells.heben("Bleistift"))
Modules Lokalisieren
Python sucht nach Modulen an mehreren Orten:
- Das aktuelle Verzeichnis
- PYTHONPATH (falls gesetzt)
- Das installationsabhängige Standardverzeichnis
Die PYTHONPATH-Variable
PYTHONPATH ist wie eine magische Karte, die Python zeigt, wo er zusätzliche Module finden kann. Du kannst sie in den Umgebungsvariablen deines Systems setzen.
Namespaces und Scoping
Stelle dir Namespaces als verschiedene Realms in deiner magischen Welt vor. Jedes Modul hat seinen eigenen Namespace, der Konflikte zwischen ähnlich benannten Funktionen oder Variablen verhindert.
Modul-Attribute
Module haben spezielle Attribute. Lass uns einige erkunden:
import magic_spells
print(magic_spells.__name__) # Gibt den Namen des Moduls aus
print(magic_spells.__file__) # Gibt den Dateipfad des Moduls aus
Das name-Attribut
Das __name__
-Attribut ist besonders. Es ist __main__
, wenn das Skript direkt ausgeführt wird, und der Name des Moduls, wenn es importiert wird.
# In magic_spells.py, füge hinzu:
if __name__ == "__main__":
print("Dieses Modul wird direkt ausgeführt")
else:
print("Dieses Modul wird importiert")
Die dir() Funktion
Die dir()
-Funktion ist wie ein magisches Spiegel, der dir alle Namen zeigt, die in einem Modul definiert sind:
import magic_spells
print(dir(magic_spells))
Die reload() Funktion
Wenn du Änderungen an einem Modul vornimmst und es ohne Python neu zu starten neu laden möchtest, kannst du reload()
verwenden:
from importlib import reload
import magic_spells
# Mache Änderungen bei magic_spells.py
reload(magic_spells)
Pakete in Python
Pakete sind wie Zauberbücher, die mehrere Module enthalten. Sie sind einfach Verzeichnisse mit einer speziellen __init__.py
-Datei.
Hier ist eine Tabelle, die die Importmethoden zusammenfasst, die wir gelernt haben:
Methode | Syntax | Beispiel |
---|---|---|
Basic Import | import module_name |
import magic_spells |
From Import | from module_name import function_name |
from magic_spells import heben |
Import All | from module_name import * |
from magic_spells import * |
Import as Alias | import module_name as alias |
import magic_spells as spells |
Und da hast du es, Lehrlinge! Du hast gerade die Grundlagen der Python-Module gelernt. Denke daran, dass Praxis Makes Perfect ist, also experimentiere weiter mit verschiedenen Modulen und erstelle deine eigene magische Python-Welt. Happy coding!
Credits: Image by storyset