Standaard- en keyword-argumenten

Python voor gevorderde ontwikkelaars

Jasmin Ludolf

Senior Data Science Content Developer

Gemiddelde

# Maak een eigen functie
def average(values):
    # Bereken het gemiddelde
    average_value = sum(values) / len(values)

    # Rond het resultaat af
    rounded_average = round(average_value, 2)

    # Retourneer rounded_average als output
    return rounded_average
  • values = argument
Python voor gevorderde ontwikkelaars

Argumenten

  • Waarden die je aan een functie of methode meegeeft
    • Positie
    • Keyword
Python voor gevorderde ontwikkelaars

Positionele argumenten

  • Geef argumenten op volgorde, gescheiden door komma's
# Rond pi af op 2 cijfers
print(round(3.1415926535, 2))
3.14
Python voor gevorderde ontwikkelaars

Keyword-argumenten

  • Geef argumenten door waarden aan keywords toe te wijzen

  • Handig voor interpretatie en het volgen van argumenten

# Rond pi af op 2 cijfers 
print(round(number=3.1415926535
Python voor gevorderde ontwikkelaars

Keyword-argumenten

  • Geef argumenten door waarden aan keywords toe te wijzen

  • Handig voor interpretatie en het volgen van argumenten

# Rond pi af op 2 cijfers 
print(round(number=3.1415926535, ndigits=2))
3.14
Python voor gevorderde ontwikkelaars

Keyword-argumenten herkennen

# Meer info over de help-functie
print(help(round))
Help on built-in function round in module builtins:

round(number, ndigits=None)
    Round a number to a given precision in decimal digits.

    The return value is an integer if ndigits is omitted or None.  Otherwise,
    the return value has the same type as the number.  ndigits may be negative.
Python voor gevorderde ontwikkelaars

Keyword-argumenten

Help on built-in function round in module builtins:

round(number, ndigits=None)
  Round a number to a given precision in decimal digits.

  The return value is an integer if ndigits is omitted or None. Otherwise 
  the return value has the same type as the number. ndigits may be negative.

$$

  • Eerste argument: number
  • Tweede argument: ndigits
Python voor gevorderde ontwikkelaars

Standaardargumenten

Help on built-in function round in module builtins:

round(number, ndigits=None)
    Round a number to a given precision in decimal digits.

    The return value is an integer if ndigits is omitted or None.  Otherwise,
    the return value has the same type as the number.  ndigits may be negative.
  • None = geen waarde / leeg

  • Standaardargument: manier om een default-waarde voor een argument te zetten

  • We overschrijven None met 2

  • Vaak gebruikte waarde? Stel die in met een standaardargument

Python voor gevorderde ontwikkelaars

Een argument toevoegen

# Maak een eigen functie
def average(values):
    average_value = sum(values) / len(values)
    rounded_average = round(average_value, 2)
    return rounded_average
Python voor gevorderde ontwikkelaars

Een argument toevoegen

# Maak een eigen functie
def average(values, rounded=False):


Python voor gevorderde ontwikkelaars

Een argument toevoegen

# Maak een eigen functie
def average(values, rounded=False):

# Rond af op twee decimalen als rounded True is if rounded == True:
average_value = sum(values) / len(values) rounded_average = round(average_value, 2) return rounded_average
Python voor gevorderde ontwikkelaars

Een argument toevoegen

# Maak een eigen functie
def average(values, rounded=False):

# Rond af op twee decimalen als rounded True is if rounded == True: average_value = sum(values) / len(values) rounded_average = round(average_value, 2) return rounded_average
# Anders, niet afronden else: average_value = sum(values) / len(values) return average_value
Python voor gevorderde ontwikkelaars

De aangepaste average()-functie gebruiken

# Lijst met bereidingstijden (minuten)
preparation_times = [19.23, 15.67, 48.57, 23.45, 12.06, 34.56, 45.67]
Python voor gevorderde ontwikkelaars

De aangepaste average()-functie gebruiken

# Het gemiddelde zonder afronden
print(average(preparation_times, False))
28.4585714
# Het gemiddelde zonder afronden
print(average(preparation_times))
28.4585714
Python voor gevorderde ontwikkelaars

De aangepaste average()-functie gebruiken

# Het afgeronde gemiddelde
print(average(values=preparation_times, rounded=True))
28.46
Python voor gevorderde ontwikkelaars

Laten we oefenen!

Python voor gevorderde ontwikkelaars

Preparing Video For Download...