Les funcions són blocs de codi reutilitzables que permeten estructurar millor els programes, evitant la repetició de codi i facilitant la seva comprensió i manteniment. En aquest tema, aprendrem com definir i utilitzar funcions en Python.

Continguts

Què és una Funció?

Una funció és un bloc de codi que només s'executa quan és cridat. Les funcions poden rebre dades, conegudes com a paràmetres, i poden retornar dades com a resultat.

Definició de Funcions

En Python, les funcions es defineixen utilitzant la paraula clau def, seguida del nom de la funció i parèntesis ().

Sintaxi

def nom_de_la_funció(paràmetres):
    """Documentació opcional de la funció"""
    cos_de_la_funció
    return valor_de_retorn

Exemple

def saluda():
    """Aquesta funció imprimeix un missatge de salutació."""
    print("Hola, benvingut a Python!")

Crida a Funcions

Per cridar una funció, simplement escrivim el nom de la funció seguit de parèntesis.

Exemple

saluda()  # Això imprimirà: Hola, benvingut a Python!

Paràmetres i Arguments

Les funcions poden acceptar paràmetres, que són valors que es passen a la funció quan aquesta és cridada.

Exemple

def saluda_nom(nom):
    """Aquesta funció imprimeix un missatge de salutació personalitzat."""
    print(f"Hola, {nom}!")

saluda_nom("Anna")  # Això imprimirà: Hola, Anna!

Paràmetres per Defecte

Podem definir valors per defecte per als paràmetres.

def saluda_nom(nom="visitant"):
    """Aquesta funció imprimeix un missatge de salutació personalitzat amb un valor per defecte."""
    print(f"Hola, {nom}!")

saluda_nom()  # Això imprimirà: Hola, visitant!

Valor de Retorn

Les funcions poden retornar un valor utilitzant la paraula clau return.

Exemple

def suma(a, b):
    """Aquesta funció retorna la suma de dos números."""
    return a + b

resultat = suma(3, 5)
print(resultat)  # Això imprimirà: 8

Exemples Pràctics

Exemple 1: Funció sense Paràmetres i sense Valor de Retorn

def imprimeix_missatge():
    """Aquesta funció imprimeix un missatge."""
    print("Això és un missatge.")

imprimeix_missatge()  # Això imprimirà: Això és un missatge.

Exemple 2: Funció amb Paràmetres i Valor de Retorn

def multiplica(a, b):
    """Aquesta funció retorna el producte de dos números."""
    return a * b

producte = multiplica(4, 7)
print(producte)  # Això imprimirà: 28

Exercicis Pràctics

Exercici 1: Funció de Salutació

Escriu una funció saluda_persona que accepti un nom com a paràmetre i imprimeixi un missatge de salutació personalitzat.

def saluda_persona(nom):
    """Aquesta funció imprimeix un missatge de salutació personalitzat."""
    print(f"Hola, {nom}!")

# Prova la funció
saluda_persona("Joan")

Exercici 2: Funció de Càlcul de l'Àrea d'un Rectangle

Escriu una funció area_rectangle que accepti l'amplada i l'alçada d'un rectangle com a paràmetres i retorni la seva àrea.

def area_rectangle(amplada, alçada):
    """Aquesta funció retorna l'àrea d'un rectangle."""
    return amplada * alçada

# Prova la funció
area = area_rectangle(5, 10)
print(area)  # Això hauria d'imprimir: 50

Solucions

Solució Exercici 1

def saluda_persona(nom):
    """Aquesta funció imprimeix un missatge de salutació personalitzat."""
    print(f"Hola, {nom}!")

# Prova la funció
saluda_persona("Joan")  # Això imprimirà: Hola, Joan!

Solució Exercici 2

def area_rectangle(amplada, alçada):
    """Aquesta funció retorna l'àrea d'un rectangle."""
    return amplada * alçada

# Prova la funció
area = area_rectangle(5, 10)
print(area)  # Això imprimirà: 50

Conclusió

En aquesta secció, hem après com definir i utilitzar funcions en Python. Les funcions són una eina poderosa per organitzar i reutilitzar codi. Hem vist com definir funcions amb i sense paràmetres, com retornar valors i hem practicat amb alguns exemples i exercicis. En la propera secció, explorarem els arguments de funció amb més detall.

Curs de Programació en Python

Mòdul 1: Introducció a Python

Mòdul 2: Estructures de Control

Mòdul 3: Funcions i Mòduls

Mòdul 4: Estructures de Dades

Mòdul 5: Programació Orientada a Objectes

Mòdul 6: Gestió de Fitxers

Mòdul 7: Gestió d'Errors i Excepcions

Mòdul 8: Temes Avançats

Mòdul 9: Proves i Depuració

Mòdul 10: Desenvolupament Web amb Python

Mòdul 11: Ciència de Dades amb Python

Mòdul 12: Projecte Final

© Copyright 2024. Tots els drets reservats