Due funzioni molto utili di Python che vedo usate di rado nei programmi: any() e all()

Python fin dalle sue prime versioni ha funzioni che possono svolgere notevoli ottimizzazioni e semplificazioni del codice.

Quelle che esamineremo in questo articolo permettono di valutare condizioni booleane su una elenco di valori che sarà passato come lista, tupla o, generalizzando, come iterable.

La funzione any() restituisce True se almeno uno dei valori dell’elenco è vero (True), altrimenti restituisce False:

any(iterable)

Nella documentazione della funzione è indicato anche il suo codice equivalente:

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False

Quello che segue, invece, è un esempio di uso di questa funzione:

numbers = [1, 2, 3, 4, 5]
result = any(num > 3 for num in numbers)
print(result)  # Output: True

Il risultato è True perché almeno uno degli elementi della lista è maggiore di tre.

La funzione all(), invece, restituisce True solo se tutti i valori dell’elenco sono veri (True), altrimenti restituisce False:

all(iterable)

Il codice equivalente che troviamo nella documentazione è:

def all(iterable):
    for element in iterable:
        if not element:
            return False
    return True

Un esempio di uso potrebbe essere:

numbers = [1, 2, 3, 4, 5]
result = all(num > 0 for num in numbers)
print(result)  # Output: True

Il risultato è True perché tutti gli elementi sono maggiori di zero.

Conclusioni

Le funzioni che abbiamo esaminato permettono di mantenere il codice molto conciso, quindi più leggibile, e nello stesso tempo efficiente perché essendo incluse nelle librerie di sistema sono già compilate e ottimizzate.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *