52 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Python Boolean Operations
 | ||
| localeTitle: Булевы операции на 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 - логические операции](https://docs.python.org/3/library/stdtypes.html#boolean-operations-and-or-not)
 | ||
| 
 | ||
| Это булевские операции, упорядоченные по приоритету приоритета:
 | ||
| 
 | ||
| Операция | Результат | Заметки  
 | ||
| \--------- | ------------------------------------ | -----  
 | ||
| x или y | если x ложно, то y, else x | (1)  
 | ||
| x и y | если x ложно, то x, else y | (2)  
 | ||
| не x | если x является ложным, то True, else False | (3)
 | ||
| 
 | ||
| **Заметки:**
 | ||
| 
 | ||
| 1.  Это оператор короткого замыкания, поэтому он оценивает только второй аргумент, если первый - False.
 | ||
| 2.  Это оператор короткого замыкания, поэтому он вычисляет только второй аргумент, если первый имеет значение True.
 | ||
| 3.  не имеет более низкого приоритета, чем небулевые операторы, поэтому не == b интерпретируется как нет (a == b), а a == not b является синтаксической ошибкой.
 | ||
| 
 | ||
| ## Примеры:
 | ||
| 
 | ||
| ### `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 
 | ||
| 
 | ||
| ``` |