Читать книгу Routineaufgaben mit Python automatisieren - Al Sweigart - Страница 84

3 Funktionen

Оглавление

In den vorhergehenden Kapiteln haben Sie bereits die Funktionen print(), input() und len() kennengelernt. Python bietet noch weitere integrierte Funktionen wie diese, aber Sie können auch Ihre eigenen schreiben. Eine Funktion ist ein Miniprogramm innerhalb eines Programms.

Um besser zu verstehen, wie Funktionen aufgebaut sind und was sie tun, wollen wir eine erstellen. Geben Sie das folgende Programm im Dateieditor ein und speichern Sie es als helloFunc.py:

def hello():

print('Howdy!')

print('Howdy!!!')

print('Hello there.')

hello()

hello()

hello()

Die Ausführung dieses Programms können Sie sich auf https://autbor.com/hellofunc/ ansehen. Die erste Zeile enthält die Anweisung def (), die eine Funktion namens hello() definiert. Der Code in dem darauf folgenden Block () stellt den Rumpf der Funktion dar. Während der Funktionsdefinition wird er nicht ausgeführt, sondern erst, wenn die Funktion aufgerufen wird.

Die hello()-Zeilen im Anschluss an die Funktionsdefinition () sind Funktionsaufrufe. Im Code wird ein solcher Aufruf in Form des Funktionsnamens gefolgt von den Klammern geschrieben, wobei in den Klammern Zahlen als Argumente stehen können. Wenn die Programmausführung diese Aufrufe erreicht, springt sie zur ersten Zeile in der Funktion und führt den dort vorhandenen Code aus. Am Ende der Funktion angelangt, kehrt die Ausführung wieder zu der Zeile zurück, in der die Funktion aufgerufen wurde. Der Code wird dann wie gehabt weiter abgearbeitet.

Da das Programm die Funktion hello() dreimal aufruft, wird der Code von hello() auch dreimal ausgeführt. Wenn Sie das Programm starten, sehen Sie folgende Ausgabe:

Howdy!

Howdy!!!

Hello there.

Howdy!

Howdy!!!

Hello there.

Howdy!

Howdy!!!

Hello there.

Ein wichtiger Zweck von Funktionen besteht darin, Code, der mehrfach ausgeführt wird, an einer Stelle zentral vorzuhalten. Ohne Funktionen müssten Sie den Code überall dort, wo er benötigt wird, komplett einfügen. Das Programm sähe dann wie folgt aus:

print('Howdy!')

print('Howdy!!!')

print('Hello there.')

print('Howdy!')

print('Howdy!!!')

print('Hello there.')

print('Howdy!')

print('Howdy!!!')

print('Hello there.')

Eine solche Duplizierung von Code sollten Sie in jedem Fall vermeiden, denn wenn Sie Ihren Code irgendwann ändern – zum Beispiel, um einen Fehler zu korrigieren –, müssten Sie ihn sonst an jeder einzelnen Stelle anpassen, an der Sie ihn eingefügt haben.

Je mehr Programmiererfahrung Sie haben, umso häufiger werden Sie duplizierten oder kopierten Code entfernen können. Dadurch werden Ihre Programme kürzer, besser lesbar und leichter zu ändern.

Routineaufgaben mit Python automatisieren

Подняться наверх