티스토리 뷰

#10 파이썬 chapter 10. 불 자료형

 

1. 불 자료형이란?

 

참(True) 과 거짓(False) 나타내는 자료형이다. 불 자료형은 다음 2가지 값만을 가질 수 있다.

 

- True :참

- False : 거짓

 

아래와 같이 변수 a에는 True를, 변수 b에는 False를 지정해 보자.

 

>>> a = True
>>> b = False

 

따옴표로 감싸지 않은 문자열은 변수에 지정해서 오류가 발생할 것 같지만 잘 실행된다. type 함수를 변수 a와 b에 사용하면 두 변수의 자료형이 bool로 지정된 것을 확인할 수 있다.

 

>>> type(a)
<class 'bool'>
>>> type(b)
<class 'bool'>

불 자료형은 조건문의 반환 값으로도 사용된다. 조건문에 대해서는 if 문에서 자세히 배우겠지만 잠시 살펴보자.

 

>>> 1 == 1
True

 

1 == 1 '1과 1이 같은가?' 를 묻는 조건이다. 이런 조건문은 결과로 True 또는 False에 해당되는 불 자료형을 돌려준다.

1과 1은 같으므로 True 를 돌려준다.

 

>>> 2 > 1
True
>>> 2 <1
False

 

2는 1보다 크기 때문에 True를 돌려주고, 2는 1보다 작지 않기 때문에 False 를 돌려준다.

 

2. 자료형의 참과 거짓

 

자료형에 참과 거짓이 있다는게 조금은 이상하게 들릴지 모르지만 참과 거짓은 분명히 있다.

이는 매우 중요한 특징이며 실제로도 자주 쓰인다. 자료형의 참과 거짓을 구분하는 기준은 다음과 같다.

 

   자료형            값             참 or 거짓
 
   문자열         "python"              참
   문자열            ""                거짓
   
   리스트         [1, 2, 3]             참
   리스트            []                거짓
   
   튜플              ()                거짓
   
  딕셔너리           {}                거짓
  
   숫자형        0이 아닌 숫자          참
   숫자형            0                 거짓
   숫자형           None               거짓

 

문자열, 리스트, 튜플 딕셔너리의 값이 비어있으면 거짓이 된다. 당연히 비어있지 않으면 참이 된다.

 

다음예를 보고 참과 거짓이 프로그램에서 어떻게 쓰이는지 간단히 알아보자.

 

>>> a = [1, 2, 3, 4]
>>> while a:   <- a 가 참인동안
	a.pop()    <- 리스트의 마지막 요소를 하나씩 꺼낸다.

	
4
3
2
1

 

먼저 a = [1, 2, 3, 4] 리스트를 하나 만들었다.

 

while 문은 나중에 배우겠지만 간단히 알아보면 조건문이 참인 동안 조건문 안에 있는 문장을 반복해서 수행한다.

즉 a가 참인 경우에 a.pop() 를 계속 실행하라는 의미이다.

 

>>> if []:
	print("참")
else:
	print("거짓")

	
거짓

 

[] 는 앞에서 볼 수 있듯이 비어 있는 리스트이므로 거짓이다.

 

>>> if[1, 2, 3]:
	print("참")
else:
	print("거짓")

	
참

 

위 코드의 [1, 2, 3] 은 요솟값이 있는 리스트이기 때문에 참이다. 따라서 "참"을 출력한다.

 

3.  불 연산

 

자료형에 참과 거짓이 있음을 이미 알아보았다.  bool 내장 함수를 사용하면 자료형의 참과 거짓을 식별할 수 있다.

 

>>> bool('pyton')
True
>>> bool('')
False

 

'python' 문자열은 빈 문자열이 아니므로 bool 연산의 결과로 불 자료형인 True 를 돌려준다.

'' 문자열은 빈 문자열이므로 bool 연산의 결과로 불 자료형인 False를 돌려준다.

 

>>> bool([1, 2, 3])
True
>>> bool([])
False
>>> bool(0)
False
>>> bool(3)
True

 

위에서 알아본 것과 동일한 참과 거짓에 대한 결과를 돌려주는 것을 확인할 수 있다.

 

출처 : 점프 투 파이썬

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함