L' istruzione if è la forza trainante della programmazione logica. Di conseguenza, una migliore comprensione di Python se è un'aggiunta significativa alla vostra abilità di programmazione Python.
Vuoi saperne di più sull'istruzione if di Python ? Nessun problema, qui spiegheremo come usare la condizione if di Python per prendere il controllo del tuo programma.
Come funziona l'istruzione if in Python?
In genere, le istruzioni condizionali in Python iniziano con if , e senza di essa, non sono affatto logiche. Tuttavia, le condizioni sono un insieme di regole definite dal programmatore che controllano se un particolare evento è vero o falso. In sostanza, controllano la validità di un evento.
Un'istruzione if in Python generalmente prende questo formato:
if an event is True: Execute some commands...
Anche se l' istruzione if può stare da sola, altre condizioni come elif e else possono eseguirne il backup per mettere in atto altre regole. Tuttavia, puoi anche usare istruzioni come not , e , o e in con la condizione if di Python.
Python consente anche di utilizzare l' istruzione if direttamente con flussi di controllo come il ciclo for . Vediamo come utilizzare l' istruzione if con ciascuno di questi casi negli esempi seguenti.
Come usare le istruzioni if e if...else di Python
Con la condizione if , puoi dire a Python di eseguire una serie di comandi fino a quando un evento è vero:
if 5 > 3: print("Valid") Output: Valid
Tuttavia, una combinazione delle condizioni if else è utile quando è necessario eseguire un altro set di comandi se il primo è falso. Vediamo questo in pratica:
a = 10 b = 3 if a == b: print("They're the same") else: print("They're not the same") Output: They're not the same
Puoi controllare l'uguaglianza delle due variabili sopra direttamente facendo in modo che Python restituisca un valore booleano. Ad esempio, la stampa di a==b restituisce False:
a = 10 b = 3 print(a==b) Output: False
Come usare le condizioni if...elif...else di Python
Mentre i linguaggi di programmazione come JavaScript usano else if , Python usa elif . Tuttavia, un else di solito termina una serie di istruzioni condizionali in Python. Ma se vuoi ancora convalidare altri eventi prima di porre fine alle tue condizioni, allora devi usare l' istruzione elif . Vediamo il caso d'uso dell'elif di Python di seguito:
a = 10 b = 3 if b == a: print(a + b) elif b * a == 30: print(b - a) else: print("impossible") Output: -7
Nel codice di cui sopra, Python esegue il comando all'interno del se dichiarazione, se del caso è vero. In caso contrario, esegue l' istruzione elif . Altrimenti, emette l' istruzione else .
Puoi usare più di un elif e un altro per mettere in atto altre condizioni:
myList = ['Python', 'MUO', 'Hello'] if ('Python') in myList: print("No") elif 'N' in myList[1]: print("MUO") elif 'e' in myList[2]: print("Hello") else: print("None is true") Output: Hello
Come usare le parole chiave "in", "e" e "o" con Python if
È possibile utilizzare l' nella parola chiave con il se istruzione per verificare se un elemento è presente in una lista o un array:
myList = ['Python', 'MUO', 'Hello'] if ('Python') in myList: print("It's in the list") Output: It's in the list
Puoi anche usare l' espressione e con if per controllare più di un singolo elemento:
myList = ['Python', 'MUO', 'Hello'] if ('Python' and 'Hello') in myList: print("Hello Python") Output: Hello Python
Correlati: il cheat sheet di Python RegEx per i programmatori in erba
Per verificare se uno degli elementi è nell'elenco, puoi utilizzare la parola chiave o :
myList = ['Python', 'MUO', 'Hello'] if ('Python' or 'Bags') in myList: print("One of them is on the list") Output: One of them is on the list
Come usare Python se con il ciclo for
Puoi anche controllare cosa succede in un ciclo for con la condizione if . Ad esempio, puoi impostare condizioni durante il ciclo attraverso un elenco o un array con un Python for loop . Dai un'occhiata al codice di esempio qui sotto per vedere come funziona:
myList = myList = ['Python', 'MUO', 'Hello'] myList2 = ["Fish", "Gold", "Bag"] if len(myList) == 3: for items in myList: print(items) else: for items2 in myList2: print(items2)
Il codice sopra controlla se la lunghezza di myList è esattamente tre e lo scorre se l'istruzione è vera. Altrimenti, esegue l' istruzione else e restituisce ogni elemento in myList2 .
Tuttavia, puoi anche modificare quel codice per stampare tutti gli elementi in entrambi gli elenchi con esattamente quattro parole:
myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] for items in (myList + myList2): if len(items) == 4: print(items)
Il codice sopra prima concatena i due elenchi. Quindi controlla se ci sono elementi con esattamente quattro parole in entrambi gli elenchi e li esegue in loop se l'affermazione è vera.
Come usare l'istruzione if in una funzione Python
La condizione if può anche tornare utile quando si scrive una funzione in Python. Come in un codice semplice, la condizione if può dettare cosa succede in una funzione.
Correlati: Come creare, importare e riutilizzare il proprio modulo in Python
Vediamo come utilizzare l' istruzione if e altre condizioni in una funzione Python eseguendo il refactoring dell'ultimo blocco di codice nella sezione precedente sopra:
def checkString(list1, list2): for items in (list1 + list2): if len(items) == 4: print(items) break else: print("impossible") List1 = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] List2 = ["Fish", "Gold", "Bag"] checkString(List, List2)
Come il codice nella sezione precedente, la funzione sopra emette tutti gli elementi con esattamente quattro parole. Tuttavia, l' istruzione break garantisce che l'esecuzione si arresti dopo aver stampato l'ultimo elemento che soddisfa la condizione. Se l'evento all'interno dell'istruzione if è falso, la condizione else esegue il comando al suo interno.
Utilizzo dell'istruzione if con la funzione Lambda di Python
Puoi usare l'istruzione if anche con una funzione lambda anonima. Tutto ciò di cui hai bisogno è una conoscenza di base della funzione lambda di Python per farlo.
Riscriviamo la funzione nella sezione precedente come una funzione lambda per capire come funziona:
checkString = lambda a, b: [y for y in (a + b) if len(y) == 4] print(checkString(List1, List2)) Output: ['Four', 'Fish', 'Gold']
La funzione lambda sopra fornisce lo stesso output della funzione normale che abbiamo usato nella sezione precedente. Qui, tuttavia, abbiamo espresso il codice creando una comprensione di elenco Python.
Come utilizzare un'istruzione if in una comprensione di elenchi Python
È anche possibile utilizzare l' istruzione if con il ciclo for in una comprensione di elenco. In questo esempio, riscriviamo il codice precedente per la stampa di tutti gli elementi con quattro conteggi di parole in una comprensione di elenco:
myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] lis = [lists for lists in (myList + myList2) if len(lists) is 4] print(lis) Output: ['Four', 'Fish', 'Gold']
Relazionato: Come utilizzare le Comprensioni degli elenchi Python (e quando non utilizzarle)
Puoi anche usare if...and or if...or in una comprensione di elenco. Per prima cosa, vediamo il caso d'uso di if...o in una comprensione di lista Python:
myList = ['Python', 'MUO', 'Hello', 'Books', 'Pizza', 'Four'] myList2 = ["Fish", "Gold", "Bag"] lis = [lists for lists in (myList + myList2) if ('P' in lists or 'F' in lists)] print(lis) Output: ['Python', 'Pizza', 'Four', 'Fish']
Il codice controlla se sono presenti elementi con l'alfabeto "P" o "F" e li emette se l'istruzione è vera.
Possiamo anche usare if...and per stampare elementi che contengono entrambe le stringhe "P" e "o":
lis = [lists for lists in (myList + myList2) if ('P' in lists and 'o' in lists)] print(lis) Output: ['Python']
Il codice sopra emette solo "Python" poiché è l'unico elemento nell'elenco che ha sia "P" che "o".
Come usare Nested se in una comprensione dell'elenco Python
In alcuni casi, puoi anche utilizzare una condizione if annidata in una comprensione di elenco. Diamo un'occhiata a un esempio di una comprensione di elenco che restituisce tutti i numeri che possono dividere tre e cinque utilizzando condizioni if annidate :
B = range(31) A = [x for x in B if x % 3 == 0 if x % 5 ==0] print(A) Output: [0, 15, 30]
Tuttavia, puoi fare ciò che fa il codice sopra usando una comprensione impostata invece di un elenco. Ma questa volta, ottieni il tuo output come un set letterale:
A = {x for x in B if x % 3 == 0 if x % 5 ==0} print(A) Output: {0, 30, 15}
Sentiti libero di giocare con altri esempi di comprensione degli elenchi modificandoli anche per impostare la comprensione.
Le istruzioni logiche controllano molti programmi automatizzati
Le istruzioni logiche sono gli elementi costitutivi di molti programmi codificati oggi disponibili, e questo non è diverso quando si tratta di programmi che funzionano su Python. Tuttavia, come abbiamo affermato in precedenza, le istruzioni condizionali ti danno una migliore comprensione del tuo codice, così puoi modificare le cose nel modo desiderato.
I progetti di vita reale come lo sviluppo di giochi, l'apprendimento automatico e lo sviluppo web dipendono da queste istruzioni condizionali per l'automazione delle attività, consentendo loro di servire gli utenti con gli output desiderati. Quindi, come programmatore in arrivo, saperne di più su di loro e su come funzionano è necessario per codificare programmi tecnologici moderni dinamici e reattivi.