Python의 단락 평가
이 기사는 논리 연산자를 사용하여 파이썬에서 단락 동작을 보여주는 것에 관한 것입니다.
Python의 논리 연산자
OR
연산자
OR
: 두 피연산자는 Python or
연산자를 사용하여 평가됩니다. ‘or’ 연산자는 피연산자 중 하나가 ‘True’이면 ‘True’를 반환합니다.
그러나 or
연산자는 주어진 모든 식 또는 피연산자가 False
를 반환하는 경우에만 False
를 반환합니다.
OR
연산자의 논리 테이블:
첫 번째 값 | 두 번째 값 | 산출 |
---|---|---|
진실 | 진실 | 진실 |
진실 | 거짓 | 진실 |
거짓 | 진실 | 진실 |
거짓 | 거짓 | 거짓 |
Python 콘솔에서 위의 OR
연산자 표현:
>>> True or True
True
>>> True or False
True
>>> False or True
True
>>> False or False
False
Python에서는 OR
연산자를 사용하여 여러 표현식을 비교할 수도 있습니다.
>>> (5 < 10) or (8 < 5)
True
>>> (5 < 10) or (8 < 5) or (2 == 2) or (9 != 8)
True
AND
연산자
AND
: Python and
연산자를 사용할 때 두 피연산자가 모두 평가되고 주어진 표현식이나 연산자가 참이 아니면 False
가 반환됩니다. ‘and’ 연산자는 주어진 식 또는 피연산자가 모두 ‘True’인 경우에만 ‘True’를 반환합니다.
AND
연산자의 논리 테이블:
첫 번째 값 | 두 번째 값 | 산출 |
---|---|---|
진실 | 진실 | 진실 |
진실 | 거짓 | 거짓 |
거짓 | 진실 | 거짓 |
거짓 | 거짓 | 거짓 |
Python 콘솔에서 위의 AND
연산자 표현:
>>> True and True
True
>>> True and False
False
>>> False and True
False
>>> False and False
False
AND
연산자를 사용하여 여러 식을 비교합니다.
>>> (5 < 10) and (8 < 5)
False
>>> (5 < 10) and (8 < 5) and (2 == 2) and (9 != 8)
False
>>> (10 == 10) and (8 != 5) and (2 == 2) and (9 != 8)
True
단락이란 무엇입니까
단락은 표현식의 진리값이 이미 설정되었을 때 부울 연산의 종료를 나타냅니다. Python 인터프리터는 왼쪽에서 오른쪽으로 식을 평가합니다.
Python의 수많은 부울 연산자와 함수는 단락을 허용합니다.
def exp(n):
print("Hello")
return n
단락이 어떻게 발생하는지 보기 위해 위의 함수를 피연산자 또는 표현식 중 하나로 사용하여 Python 인터프리터가 실행할 때 "Hello"
라는 단어를 인쇄합니다.
Python에서 AND
연산자를 사용한 단락
및
연산자 사용:
>>> True and exp(1)
Hello
1
Python 인터프리터는 위 코드에서 왼쪽에서 오른쪽으로 코드를 평가합니다. AND
연산자의 논리 테이블에 따라 True
부울 값을 얻으려면 표현식이 True
여야 합니다.
Python 인터프리터는 첫 번째 값이 True
로 설정되어 있기 때문에 함수를 평가합니다.
초기값을 False
로 설정하면 어떻게 될까요? 아래 코드를 관찰하십시오.
>>> False and exp(1)
False
초기 값이 False
로 설정되어 있으므로 Python 인터프리터는 후자의 표현식을 무시하여 실행 시간을 절약합니다.
표현식 바꾸기:
>>> exp(1) and True
Hello
True
>>> exp(1) and False
Hello
False
이 코드에서 초기 표현식은 이전에 만든 함수입니다. Python 인터프리터는 주어진 함수를 먼저 평가하여 "Hello"
를 출력합니다.
참고: 우리가 만든 함수는 오류 또는
False
부울 값을 생성하지 않습니다. 따라서 파이썬 인터프리터는and
연산자가 사용될 때 전자가 주어진 함수일 때 항상 평가하고 후자를 표현해야 합니다.
Python에서 OR
연산자를 사용한 단락
또는
연산자 사용:
>>> True or exp(1)
True
코드를 왼쪽에서 오른쪽으로 평가합니다. 초기 값을 True
로 설정하면 파이썬 인터프리터가 주어진 함수인 후자 표현식의 실행을 무시할 수 있습니다.
따라서 OR
연산자의 주어진 논리 테이블에 따라 출력은 True
입니다.
>>> False or exp(1)
Hello
1
Python 인터프리터는 이전 값이 False
로 설정되어 있기 때문에 위 코드에서 함수를 실행합니다.
표현식 바꾸기:
>>> exp(1) or True
Hello
1
>>> exp(1) or False
Hello
1
표현식을 교환할 때 생성된 함수는 Python 인터프리터가 평가하는 첫 번째 피연산자이므로 매번 실행됩니다.
위의 코드 예제 중 하나를 고려하면 or
연산자는 True
부울 값을 반환합니다.
그러나 or
연산자를 사용하여 False
부울 값을 얻으면 생성된 함수를 약간 조정할 수 있습니다.
def exp():
print("Hello")
return False
>>> exp()
Hello
False
위의 변경 후 exp()
함수를 호출할 때마다 콘솔에 Hello
를 인쇄한 후 False
부울 값만 반환합니다.
>>> exp() or True
Hello
True
>>> exp() or False
Hello
False
함수는 모든 호출에서 False
부울 값만 반환하므로 Python 인터프리터는 후자의 식 또는 피연산자를 평가해야 합니다.