52 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			52 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: Python Boolean Operations | ||
|  | localeTitle: Operações booleanas em Python | ||
|  | --- | ||
|  | [`and`](https://docs.python.org/3/reference/expressions.html#and) , [`or`](https://docs.python.org/3/reference/expressions.html#or) , [`not`](https://docs.python.org/3/reference/expressions.html#not) | ||
|  | 
 | ||
|  | [Python Docs - Operações booleanas](https://docs.python.org/3/library/stdtypes.html#boolean-operations-and-or-not) | ||
|  | 
 | ||
|  | Estas são as operações booleanas, ordenadas por prioridade crescente: | ||
|  | 
 | ||
|  | Operação | Resultado | Notas   | ||
|  | \--------- | ------------------------------------ | -----   | ||
|  | x ou y | se x é falso, então y, senão x | (1)   | ||
|  | x e y | se x é falso, então x, senão y | (2)   | ||
|  | não x | se x é falso, então True, else False | (3) | ||
|  | 
 | ||
|  | **Notas:** | ||
|  | 
 | ||
|  | 1.  Este é um operador de curto-circuito, então só avalia o segundo argumento se o primeiro for Falso. | ||
|  | 2.  Este é um operador de curto-circuito, por isso só avalia o segundo argumento se o primeiro for verdadeiro. | ||
|  | 3.  não tem uma prioridade mais baixa que os operadores não booleanos, portanto, não a == b é interpretada como não (a == b), e a == não b é um erro de sintaxe. | ||
|  | 
 | ||
|  | ## Exemplos:
 | ||
|  | 
 | ||
|  | ### `not` :
 | ||
|  | ``` | ||
|  | >>> not True  | ||
|  |  False  | ||
|  |  >>> not False  | ||
|  |  True  | ||
|  | ``` | ||
|  | 
 | ||
|  | ### `and` :
 | ||
|  | ``` | ||
|  | >>> True and False    # Short-circuited at first argument.  | ||
|  |  False  | ||
|  |  >>> False and True    # Second argument is evaluated.  | ||
|  |  False  | ||
|  |  >>> True and True     # Second argument is evaluated.  | ||
|  |  True  | ||
|  | ``` | ||
|  | 
 | ||
|  | ### `or` :
 | ||
|  | ``` | ||
|  | >>> True or False    # Short-circuited at first argument.  | ||
|  |  True  | ||
|  |  >>> False or True    # Second argument is evaluated.  | ||
|  |  True  | ||
|  |  >>> False or False   # Second argument is evaluated.  | ||
|  |  False  | ||
|  | 
 | ||
|  | ``` |