Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Operator Logici | Booleani e Confronti
Tipi di dati in Python

bookOperator Logici

Le persone dicono "sì e sì", "sì o no", "assolutamente no". In Python, gli operatori logici and, or e not esprimono formalmente queste idee e producono valori booleani (True/False) che utilizzerai con i confronti in if/while.

Significato di ciascun operatore

Precedenza

not ha una priorità maggiore di and, che a sua volta ha una priorità maggiore di or (not > and > or). Usa le parentesi in caso di dubbio.

Ad esempio, age >= 18 and has_id è True solo se entrambe le condizioni sono soddisfatte:

123
age = 21 has_id = True print(age >= 18 and has_id) # True
copy

Tavola della verità

Una tavola della verità elenca tutti i possibili valori di verità degli input e mostra il risultato di un'espressione logica. È un modo compatto per ragionare sulla logica senza eseguire il codice.

Utilizzo della tabella

Se X è False e Y è True, allora X and Y è False, X or Y è True e not X è True.

Valori di ritorno e short-circuiting (insieme)

and e or non restituiscono sempre le parole True/False, ma restituiscono uno dei loro operandi, e Python può interrompere l'esecuzione anticipatamente una volta noto il risultato.

  • A and B:

  • Se A è falsey, l'intera espressione è falsa e il risultato è A (Python non valuta B);

  • Se A è truthy, il risultato dipende da B e l'espressione viene valutata come B.

  • A or B:

  • Se A è truthy, l'espressione è vera e il risultato è A (Python non valuta B);

  • Se A è falsey, il risultato dipende da B e l'espressione viene valutata come B.

  • not X restituisce sempre un vero Booleano: True o False.

1234567891011121314151617
# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
copy

1. Completa gli spazi con True o False. Sia X = True, Y = False.

2. Quale affermazione corrisponde alla logica classica per "né X né Y"?

3. Cosa restituisce l'espressione?

question-icon

Completa gli spazi con True o False. Sia X = True, Y = False.

X and Y
not X

X or Y

question mark

Quale affermazione corrisponde alla logica classica per "né X né Y"?

Select the correct answer

question mark

Cosa restituisce l'espressione?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Suggested prompts:

Can you explain what "short-circuiting" means in more detail?

Can you give more real-life examples of using these logical operators?

How do I know if a value is considered "truthy" or "falsey" in Python?

Awesome!

Completion rate improved to 3.45

bookOperator Logici

Scorri per mostrare il menu

Le persone dicono "sì e sì", "sì o no", "assolutamente no". In Python, gli operatori logici and, or e not esprimono formalmente queste idee e producono valori booleani (True/False) che utilizzerai con i confronti in if/while.

Significato di ciascun operatore

Precedenza

not ha una priorità maggiore di and, che a sua volta ha una priorità maggiore di or (not > and > or). Usa le parentesi in caso di dubbio.

Ad esempio, age >= 18 and has_id è True solo se entrambe le condizioni sono soddisfatte:

123
age = 21 has_id = True print(age >= 18 and has_id) # True
copy

Tavola della verità

Una tavola della verità elenca tutti i possibili valori di verità degli input e mostra il risultato di un'espressione logica. È un modo compatto per ragionare sulla logica senza eseguire il codice.

Utilizzo della tabella

Se X è False e Y è True, allora X and Y è False, X or Y è True e not X è True.

Valori di ritorno e short-circuiting (insieme)

and e or non restituiscono sempre le parole True/False, ma restituiscono uno dei loro operandi, e Python può interrompere l'esecuzione anticipatamente una volta noto il risultato.

  • A and B:

  • Se A è falsey, l'intera espressione è falsa e il risultato è A (Python non valuta B);

  • Se A è truthy, il risultato dipende da B e l'espressione viene valutata come B.

  • A or B:

  • Se A è truthy, l'espressione è vera e il risultato è A (Python non valuta B);

  • Se A è falsey, il risultato dipende da B e l'espressione viene valutata come B.

  • not X restituisce sempre un vero Booleano: True o False.

1234567891011121314151617
# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy
copy

1. Completa gli spazi con True o False. Sia X = True, Y = False.

2. Quale affermazione corrisponde alla logica classica per "né X né Y"?

3. Cosa restituisce l'espressione?

question-icon

Completa gli spazi con True o False. Sia X = True, Y = False.

X and Y
not X

X or Y

question mark

Quale affermazione corrisponde alla logica classica per "né X né Y"?

Select the correct answer

question mark

Cosa restituisce l'espressione?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4
some-alt