(Python) Istruzione condizionale nidificata. Condizioni difficili


Istruzione condizionale nidificata

Nei blocchi "se". e "altrimenti" può includere qualsiasi altra dichiarazione, incluse altre dichiarazioni condizionali nidificate; la parola  else si riferisce al if precedente più vicino.
 
Esempio 
se A > 10:
    se A > 100:
        print("Hai un sacco di soldi.")
    altro:
        print("Hai abbastanza soldi.")
altro:
    print("Non hai abbastanza soldi.")
Il grassetto indica un'istruzione condizionale che si trova all'interno di un'altra istruzione if, motivo per cui viene chiamata istruzione condizionale nidificata. Con le istruzioni condizionali nidificate, puoi implementare scelte multiple, non solo due.
Puoi anche utilizzare un operatore nidificato dopo la parola else.
 
Esempio 
se A < 10:
    print("Non hai abbastanza soldi.")
altro:
    se A > 100:
  print("Hai un sacco di soldi.")
  altro:
  print("Hai abbastanza soldi.")
In questo caso, se dopo else è necessario verificare un'altra condizione, allora invece dell'operatore if, puoi utilizzare "a cascata" ramificazione con la parola chiave elif (abbreviazione di else - if).
 
Esempio
se A < 10:
    print("Non hai abbastanza soldi.")
elif A > 100:
  print("Hai un sacco di soldi.")
altro:
  print("Hai abbastanza soldi.")
Prestare attenzione al rientro in tutti gli esempi. Quando si utilizza una condizione a cascata, tutte le parole chiave if-elif-else sono allo stesso livello.
Con un gran numero di controlli scritti usando una condizione a cascata, per esempio, nella catena if-elif-elif-..., viene attivata la prima vera condizione.

Condizioni complesse

Il problema precedente può essere risolto in modo più breve utilizzando condizioni complesse. 
Capiamo cosa sono le condizioni complesse.

Le condizioni più semplici consistono in una relazione (maggiore di, minore di, ecc.), ma a volte è necessario combinare condizioni semplici in condizioni più complesse, ad esempio fuori fa freddo e piove. Due semplici condizioni (fuori fa freddo), (fuori piove) sono qui collegate dalla copula I.
 
CONDIZIONE COMPLESSA - consiste in due o più semplici relazioni (condizioni) che vengono combinate utilizzando operazioni logiche:
  AND - moltiplicazione logica - scritto in Python come and, < br />   OR - aggiunta logica - scritta in Python come o,
  NOT - negazione logica - in Python scritto come not.

Operazione AND - richiede l'adempimento simultaneo di due condizioni:
  condizione 1 e condizione 2   - restituirà vero solo se entrambe le condizioni semplici sono vere contemporaneamente,
inoltre, se la condizione 1 è falsa, la condizione 2 non verrà verificata

L'operazione OR - richiede almeno una delle condizioni
  condizione 1 o  condizione 2   - restituirà falso solo se entrambe le condizioni semplici sono false allo stesso tempo,
inoltre, se la condizione 1 è vera, la condizione 2 non verrà verificata

Operazione NON 
 non condizione 1 - risulterà falso se la condizione 1 è vera e viceversa
Ad esempio, le due condizioni seguenti sono equivalenti:   A>B     e    non (A<=B)

 

Priorità di esecuzione delle operazioni logiche e delle relazioni
  1. Operazioni tra parentesi
  2. NON operazione
  3. Relazioni logiche >, <, >=, <=, ==, !=
  4. E funzionamento
  5. Operazione OR
Le parentesi vengono utilizzate per modificare l'ordine delle azioni.

 
Variabili booleane
In molti linguaggi di programmazione è possibile utilizzare variabili che memorizzano valori booleani ("true"/"false"). In Python, tali variabili possono assumere i valori True (true) o False (false). Ad esempio, il programma  
a=Vero
b=falso
stampa (a o b)
Mostra True.
Le variabili booleane sono di tipo bool, dal nome del matematico inglese George Boole, il creatore dell'algebra della logica.