Contenuti del Corso
Introduzione a Python
Introduzione a Python
Funzioni Senza Return
Le funzioni senza un'istruzione return
sono utili quando si desidera strutturare il codice in sezioni riutilizzabili che eseguono compiti come stampare messaggi, modificare dati o eseguire azioni all'interno del programma.
Nota
In Python, ogni funzione restituisce un valore. Se una funzione non include esplicitamente un'istruzione
return
, restituirà automaticamenteNone
.
Vediamo come Alex dimostra la creazione e l'uso di funzioni che non restituiscono un valore:
Il modo migliore per capire come utilizziamo le funzioni senza un'istruzione return
è vederle in azione, quindi diamo un'occhiata ad alcuni esempi.
Stampa delle Informazioni sulla Console
A volte, lo scopo di una funzione è semplicemente quello di notificare l'utente di un evento specifico o di un risultato stampando informazioni sulla console.
Ad esempio, non è necessario restituire un valore nella funzione total_sales()
perché il suo ruolo principale è eseguire un calcolo e visualizzare immediatamente il risultato:
# Prices of items sold today prices = [12.99, 23.50, 4.99, 8.75, 15.00] def total_sales(prices): print(f"Today's total sales: $", sum(prices)) total_sales(prices)
Nota
L'ordine in cui i dati e le funzioni sono dichiarati non importa. L'unica regola importante è che una funzione deve essere definita prima di essere chiamata.
Modifica di una Struttura Dati
Gli sviluppatori spesso hanno bisogno di creare funzioni che modificano una struttura dati, come una lista o un dizionario, senza restituire un valore.
Ad esempio, la funzione update_inventory()
regola i livelli di inventario in base agli items_sold
. Poiché la funzione modifica direttamente il dizionario inventory
, non c'è bisogno di restituire nulla:
# Define the function that adjusts inventory levels def update_inventory(inventory, items_sold): # Iterate over each item in the dictionary for product, quantity_sold in items_sold.items(): # Decrease the inventory by the quantity sold for each product inventory[product] -= quantity_sold # Inventory dictionary inventory = { "apples": 50, "bananas": 75, "oranges": 100 } # Items sold dictionary items_sold = { "apples": 5, "oranges": 15 } # Update the inventory based on items sold update_inventory(inventory, items_sold) # Display the updated inventory print("Updated inventory:", inventory)
Chiamare un'Altra Funzione
È comune creare funzioni che monitorano condizioni specifiche e attivano altre funzioni quando necessario.
Ad esempio, la funzione check_stock_levels()
verifica se il livello di scorte di un prodotto scende al di sotto di una soglia impostata. In tal caso, chiama la funzione restock()
per ordinare più inventario.
Questo approccio non richiede di restituire un valore, poiché l'obiettivo principale è avviare il processo di rifornimento:
# Dictionary representing the current stock of products inventory = { "apples": 17, "bananas": 75, "oranges": 2, "grapes": 50 } # Function to restock items that have low stock levels by adding a specified amount def restock(product, inventory, restock_amount): inventory[product] += restock_amount print(f"Restock order placed for {product}. New stock level: {inventory[product]} units.") # Function to check which items are below the stock threshold and trigger the `restock` function def check_stock_levels(inventory, threshold): for product, quantity in inventory.items(): if quantity < threshold: # If the stock is below the threshold, call the `restock` function to add 50 units restock(product, inventory, 50) # Checking the stock levels for all products in the inventory with a threshold of 30 units check_stock_levels(inventory, 30) # Display the final inventory after restocking print("Final inventory status:", inventory)
Grazie per i tuoi commenti!