파이썬의 논리 연산 and/or의 비밀 - 단축 평가 -

1. 논리 연산

 

A and B는

 

1)A가 True이고 B가 True이면 True

 

2) A가 True이고 B가 False이면 False

 

3) A가 False이고 B가 True이면 False

 

4) A가 False이고 B가 False이면 False

 

>>> A가 False이면 B에 상관없이 A and B는 False

 

 

A or B는

 

1) A가 True이고 B가 True이면 True

 

2) A가 True이고 B가 False이면 True

 

3) A가 False이고 B가 True이면 True

 

4) A가 False이고 B가 False이면 False

 

>>> A가 True이면 B에 상관없이 A or B는 반드시 True

 

 

 

2. 단축평가

 

파이썬은 and, or 같은 논리 연산에서 결과가 확실하면 그 다음을 보지 않고 첫번째 값을 바로 반환함

 

A가 False이면 B에 상관없이 A and B는 False

 

A가 True이면 B에 상관없이 A or B는 반드시 True

 

그래서 A가 False이면 print(A and B)는 A

 

A가 True이면 print(A or B)는 A

 

print(5 or 4)
5
print(5 or 0)
5
print(0 or 4)
4
print(0 and 4)
0
print(3 and 4)
4
print(3 and 0)
0

 

print(5 or 4)는 5 가 True니까 뒤를 보지 않고 바로 5를 return

 

print(0 or 4)는 0이 False니까 뒤를 더 봐야 True/False를 판단할 수 있어서 4를 return함

 

print(0 and 4)는 0이 False니까 뒤를 보지 않고 바로 0을 return

 

print(3 and 4)는 3이 True니까 뒤를 더 봐야 True/.False를 판단할 수 있어서 4를 return함

 

TAGS.

Comments