Skip to content

2.3.2 Benutzerdefinierte Funktionen

Patrick edited this page Nov 18, 2024 · 5 revisions

Eine Python-Funktion ist ein wiederverwendbarer Block von Code, der ausgeführt wird, wenn er aufgerufen wird. Funktionen helfen dabei, den Code zu strukturieren und wiederkehrende Aufgaben zu vereinfachen.

Einfachste Funktion

Definieren Sie eine Funktion.

def hallo():
	print('Hallo!')

'def' ist notwendig für alle Funktionen.

Rufen Sie die Funktion auf.

hallo()

'Hallo!'

Diese Funktion druckt nur 'Hallo!' aus. Rundklammern sind notwendig um die Funktion aufzurufen.

Funktion mit einem Parameter

Die Funktion hat jetzt den Name-Parameter.

def hallo_name(name):
	print(f'Hallo, {name}!')
hallo_name(name='Karl')
hallo_name('Karl')
# beide richtig

'Hallo, Karl!'

Funktion mit zwei Parametern

Die Funktion hat jetzt den Name-Parameter.

def hallo_name(vorname, nachname):
	print(f'Hallo, {vorname} {nachname}!')
hallo_name('Karl', 'Hill')
hallo_name(nachname='Hill', vorname='Karl')
# beide richtig

'Hallo, Karl Hill!'

Wenn Sie wissen, dass Sie eine Funktion brauchen, aber schreiben Sie sie nicht jetzt, dann können Sie pass eintippen. Diese Funktion macht keinen Fehlermeldung.

def pass_diese_funktion():
	pass

Funktionen mit verschiedenen Datenstrukturen

Alle Datentypen und Datenstrukturen kann als Argument eingegeben werden.

Die Funktion muss die entsprechenden Datenstrukturen richtig handeln.

# probe kann eine Liste, Tuple, oder Range sein
def mittelwert(probe):
	summe = sum(probe)
	return summe / len(probe)

Anmerkungen

In Python beziehen sich Anmerkungen, auch als "Annotations" bekannt, auf Typannotationen, die verwendet werden, um den Datentyp von Variablen, Funktionsparametern und Rückgabewerten zu spezifizieren. Sie bieten eine Möglichkeit, den Code lesbarer zu machen und die Absichten des Programmierers klarer zu kommunizieren.

# Mit Anmerkungen kann man Hinweise geben
def mittelwert(probe: list) -> float:
	"""
	Rechnet den Mittelwert
	"""
	summe = sum(probe)
	return summe / len(probe)

Besondere Parameter

def meine_function(*args, **kwargs):
	pass

*args ist ein Tuple von Argumenten ** ist ein dict von Argumenten

Wir machen genauen Beispiele während des Tutoriums.

Dokumentation über besondere Parameter.

Lernzielkontrolle

1. Aufgabe

Was sollte in ___ geschrieben?

___ abziehen(a,b):
	return a - b
Lösung

def

alle Funktion muss mit def definiert werden.

2. Aufgabe

Ergibt diese Funktion Sinn, um Sätze auszudrucken?

def hallo_namen(['Sam', 'Laura', 'Qin']):
	print(f'Hallo, {name}!')
Lösung

Man kann eine Liste als Argument eingeben, aber die Funktion muss die Datenstruktur richtig handeln. Hier muss man eine for-Schleife anwenden.


Als Nächstes: Anonyme Lambda-Funktionen ➡️

1 Set-Up

Mach dich bereit!

1.1 Python Installation

1.2 Befehlszeilenschnittstelle

1.2.1 PowerShell

1.2.2 Python pip

1.3 Code-Editor

1.4 Versionskontrolle

1.4.1 Git

1.4.2 GitHub

1.4.3 Obsidian

2 Grundlegend

Los geht's!

2.1 Rechner und Speicher

2.1.2 Datentypen

2.2 Kontrollfluss

2.3 Funktionen

2.3.4 Decorators

3 Fortgeschritten

Wie ein Profi!

3.2 Module

4 Wichtige Bibliotheken

Bibliothekskarte beantragen!

4.1 NumPy

4.2 pandas

5 Präsentationen

Letzte Strecke!

Clone this wiki locally