Python TagebuchPython lernen – mein persönliches Tagebuch

Tagebuch-Eintrag #21
Funktionen in Python mit def

So langsam wird es interessanter. Funktionen in Python ist an der Reihe. Heute erstmal die Grundlagen.
Werbung/Anzeige

Es sollte ruhige Tage werden und sein zwischen Weihnachten und Neujahr. Aber irgenwie möchte ich dieses Jahr noch unbedingt das Thema Funktionen in Python angehen und verstehen.

Funktionen gibt es sicherlich für alle Programmiersprachen und ich kenne Funktionen auch bei WordPress-Themes, wobei das natürlich nicht Python, sondern in PHP geschrieben wird.

Also ist das in der Theorie erstmal nichts neues für mich. Theorie und Praxis… naja 😉

Was sind Funktionen in Python

Für meinem Verständnis sind Funktionen Programmier-Codes, die zunächst nur definiert werden, aber noch keine Funktionen haben oder noch nicht aktiv sind. Sie sind da, aber irgenwie doch nicht 😉

Um den Programmier-Code – also die Funktion – zu aktivieren, muss die Funktion an einer beliegen Stelle abgerufen werden.

Funktionen in Python erstellen

Um eine Funktion in Python zu erstellen, muss das Schlüsselwort def verwendet werden, gefolgt mit der Name der Funktion und runde Klammern () und Dopplepunkt :

Anschließen wird mit einer Einrückung der Programm-Code geschrieben, welches beim Aufruf der Funktion ausgeführt werden soll.

# Eine einfache Funktion definieren.
def hello():
    print("Dieser Text wird über die Funktion \"hello\" ausgegeben")
# Funktion "hello" wird im Programm ausgegeben
hello()

Die Ausgabe sind dann so aus:

Funktion hello() und die Ausgabe

Funktion kann auch mehr als nur den dazugehörigen Programmier-Code ausgeben, wenn kann auch interagieren. Dafür kann für die Funktion einen Wert beim Aufruf der Funktion übergeben werden.

# Funktion mit Übergabe eines Wertes
def hi(name):
    print("# Funktion hi(name)")
    print ("Hi", name)
hi("Jing!")

Ich weise der Funktion hi() einen „Platzhalter“ (eigentlich Variable, aber für meinen eigenen Verständnis nutze ich hier das Wort Platzhalter) name hinzu: hi(name) gebe den „Platzhalter“ im Code innerhalb der Funktion auch wieder aus. Ich rufe die Funktion hi() dann mit einem Wert in den runden Klammern auf: hi(„Jing!“) und der Wert wird dem „Platzhalter“ zugewiesen. Als Ausgabe erfolgt dann: Hi Jing!

Ziemlich cool!

Python-Funktion mit Übergabe eines Wertes.

Werte mit input-Befehl

Aber es kommt noch besser, ich kann für den obigen Beispiel sogar den input-Befehl verwenden, um einen individuellen Wert für name zuzuweisen.

Individuelle Begrüßung mit Funktion und input-Befehl

Kann sicher für diverse Programme verwendet werden, um den Anwender zu begrüßen.

Mehrere Werte übergeben

Statt einem, können auch mehrere Werte in die Funktion übergeben werden. Ich habe es zur Übung mit RGB-Farben getestet, was anderes fiel mir spontan nicht ein und ich wollte nicht immer wieder Namen und so dafür herhalten 😉

# Funktion mit Übergabe mehrerer Werte
def colors(one,two,three,four):
    print("# colors(one,two,three,four)")
    print ("RGB-Farbe #1:", one)
    print ("RGB-Farbe #2:", two)
    print ("RGB-Farbe #3:", three)
    print ("Alle RGB-Farben", one + ",", two, "&", three, "gemischt ergeben die Farbe", four)
colors("Rot", "Grün", "Blau", "Weiß")
Mehrere Werte in Python-Funktion übergeben

Funktion beliebig oft aufrufen.

Ich hatte anfangs erwähnt, dass die Funktion erst ausgeführt wird, wenn es auch im Hauptprogramm aufgerufen und aktiviert wird. Die kann natürlich nicht nur einmal geschehen, sondern auch mehrmals. Und auch dies musste ich natürlich testen und ausprobieren.

Ich folgenden Code habe ich als erstes eine Funktion erstellt, um einen „Trenner“ auszugeben, wenn die Funktion aufgerufen wird. Dieser Trenner soll beim Ausführen zwischen jeder Ausgabe sein, damit es visuell besser getrennt wird wann welche Funktion beginnt.

# Funktion Trenner-Block
def divider():
    print("---------------")
    print("### TRENNER ###")
    print("---------------")
# Eine einfache Funktion definieren.
def hello():
    print("Dieser Text wird über die Funktion \"hello\" ausgegeben")
# Funktion "hello" wird im Programm ausgegeben
hello()
divider()
# Funktion mit Übergabe mehrerer Werte
def colors(one,two,three,four):
    print("# colors(one,two,three,four)")
    print ("RGB-Farbe #1:", one)
    print ("RGB-Farbe #2:", two)
    print ("RGB-Farbe #3:", three)
    print ("Alle RGB-Farben", one + ",", two, "&", three, "gemischt ergeben die Farbe", four)
colors("Rot", "Grün", "Blau", "Weiß")
divider()
# Funktion mit Übergabe eines Wertes
def hi(name):
    print("# Funktion hi(name)")
    print ("Hi", name)
hi("Jing!")
divider()
# Funktion mit Übergabe eines Wertes mit input-Befehl
def welcom(name):
    print("# Funktion hi(name)")
    print ("Hi", name)
your_name = input ("Dein Name: ")
welcom(your_name)
divider()

Den Trenner rufe ich dann mit divider() auf. Zu sehen in den Zeilen 11, 20, 26 und 33. Es ist auch zu sehen, dass obwohl ich die Funktion für den Trenner zuerst geschrieben habe und ganz am Anfang ist, die Ausgabe wirklich erst erfolgt, wenn ich es mit divider() aufrufe.

Funktion divider() wird an den richtigen Stellen ausgegeben.

Ein ziemlich langer Tagebuch-Eintrag für heute. Aber ich glaube, ich habe die Grundlage für Funktionen verstanden. Als nächste möchte ich schauen, wie man die Funktionen von anderen Dateien aus aufrufen kann.

# # ## ENDE Tagebuch-Eintrag #21 | Funktionen in Python mit def
Werbung/Anzeige
Schlagwörter im Tagebuch-Eintrag:

Kommentar schreiben




Werbung/Anzeige