Funktionen
Funktionen
Funktionen ermöglichen es uns, uns nicht zu wiederholen und Dinge, die unsere Maschinen tun können, immer wieder zu verwenden
-
Funktionen ermöglichen die Wiederverwendung von Code. – Definiert mit def, aufgerufen/aufgerufen mit Funktionsnamen.
-
Syntax = def(Schlüsselwort) benennen Sie die Funktion(),
Parameter
Parameter sind die Namen der Variablen, die wir verwenden. Definieren - Standardparameter → voreingestellte Werte.
def say_hello(name = 'John doe', emoji = '^_^'): #Default Parameters
print(f"Helloo {name} {emoji}")
Argumente
Argumente werden als tatsächliche Werte verwendet, die wir einer Funktion bereitstellen. Rufen Sie an, rufen Sie an - Positionsargumente → Ordnung ist wichtig. - Schlüsselwortargumente → namentlich angeben.
say_hello()
say_hello('marwa', '<3') #Positional arguments
say_hello(emoji = '<3', name = "Aisha") #Keyword arguments
print(say_hello) #gives location of the memory
Zurück
Funktionen sollten einen Wert zurückgeben.
def sum1(num1, num2):
return num1 + num2 #returns whatever this expression gives us
# Should do one thing really well and return something
print(sum1(1, 2))
def sum2(num1, num2): # Nested Functions
def anotherFunc(n1, n2):
return n1 + n2
return anotherFunc(num1, num2)
total = sum2(1, 2)
print(total)
Methoden vs. Funktionen
-
Funktionen: unabhängig (print(), max()).
-
Methoden: an Objekte gebunden ('hello'.capitalize()).
Eingebaute Funktionen
print(), input(), list(), max(), min()
Funktionen erstellt
def some_function ():
pass
some_function()
integrierte Methoden
'helloooo'.capitalize()
args *kwargs
args kann eine beliebige Anzahl von Positionsargumenten akzeptieren (Tupel) *kwargs ermöglichen es uns, eine beliebige Anzahl von Schlüsselwortargumenten zu erfassen und ein Wörterbuch zu erhalten
Regel: Parameter, *Argumente, Standardparameter, Kwargs (Reihenfolge der Parameter)**
def func1(*args):
print(args)
return sum(args)
print(func1(1,2,3,4,5)) #*args inside of this function is a tuple of arguments
def func2(**kwargs):
total = 0
for items in kwargs.values():
total += items
return total
print(func2(num1=5, num2=10))
def func3(*args, **kwargs): #using args and kwargs to have n no. of arguments
total = 0 #creating variable for summing up
for items in kwargs.values(): #looping, dictionary(kwargs) method(values)
total += items #adding dict values in the variable
return sum(args) + total
print(func3(1,2,3,4,5, num1=5, num=10))
Dokumentzeichenfolgen(''')
- Spezielle Kommentare innerhalb von Funktionen zur Dokumentation.
- Sie sind wirklich nützlich, um Ihren Funktionen Kommentare und Definitionen hinzuzufügen
def test(a):
'''
Info: Docstring for test and prints param a
'''
print(a)
test('woah') #to call a function
help(test) #help to find out what a function does
print(test.__doc__) #calling doc strings through methods
Üben Sie sauberen Code
def is_even(num):
return num % 2 == 0
print(is_even(74))