진리값
파이썬에서 참, 거짓은 True 와 False 라는 키워드를 사용한다. (첫 글자가 대문자라는 것에 유의해야 한다.) 진리값은 자체로 변수의 값으로 사용될 수 있으며 논리 연산의 결과를 표현하는데 사용된다. 한 가지 알아둘 것은 파이썬은 False 뿐만 아니라 None, 0 (0.0, 0j, 0.0j, 0+0j 도 마찬가지), 빈 문자열(“” 혹은 ‘’), 빈 집합 ( (), {}, [] )도 False 로 간주한다는 것이다.
비교 연산자
파이썬에는 다음과 같은 비교연산자들이 있다.
[표 1] 파이썬의 비교 연산자들
연산자
|
의미
|
x < y
|
x보다 y가 크면 True
|
x <= y
|
x보다 y가 크거나 같다면 True
|
x > y
|
x보다 y가 작으면 True
|
x >= y
|
x보다 y가 작거나 같다면 True
|
x == y
|
x와 y가 같다면 True
|
x != y
|
x와 y가 다르다면 True
|
x is y
|
동일한 객체인지를 판별 (x와 y가 같은 참조인지 판별)
|
x is not y
|
is 의 부정형 (x와 y가 다른 참조인지 판별)
|
연산자 ‘==’와 ‘!=’은 객체의 내용(content)를 직접 비교하여 참/거짓을 판별한다. 객체의 형(type)이 다르면 두 객체는 항상 다르다. 단, 숫자형인 경우 int, float, complex 간에도 실제로 같은 숫자라면 같다. 즉, 1 (int형), 1.0 (float형), 1+0j (complex형), 1.0+0j (complex형), 1.0+0.0j (complex형) 는 모두 같은 숫자로 판별된다.
>>> sa = 'hello everybody'
|
반면 연산자 is 는 두 객체가 동일한 참조(주소)를 가지고 있는 지를 판별하는 것이다. 만약 id(x)와 id(y)가 같다면 x is y 는 True값을 가진다.
>>> sa='hello everybody'
|
논리 연산자
논리 연산자는 조건식들끼리 묶는 역할을 한다.
[표 2] 파이썬의 논리 연산자들
연산자
|
기능
|
x and y
|
x와 y 둘 다 True 일 때 True 그 외는 False
|
x or y
|
x와 y 둘 다 False 일 때 False 그 외는 True
|
not x
|
x가 True 일 때 False
|
이와 같이 파이썬의 논리 연산자는 다른 언어들과는 달리 자연어(and, or, not)을 사용한다.
댓글 없음:
댓글 쓰기