Zum Inhalt

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))