자료형이란 프로그래밍을 할 때 쓰이는 숫자, 문자열 등 자료 형태로 사용하는 모든 것을 뜻한다. 프로그램의 기본이자 핵심 단위가 바로 자료형이다.
계산 프로그램을 만들려면 어떤 것을 계산할지부터 알아야 하고, 데이터베이스 프로그램을 만들려면 어떤 자료를 저장할지부터 알아야 하는 것처럼 기본 중의 기본이다.
숫자형(Number)이란 숫자 형태로 이루어진 자료형이다. 파이썬에서는 숫자를 정수(Integer), 실수(Floating point), 복소수 (complex number)로 구분한다. 보통 프로그래밍에서는 정수와 실수를 주로 사용한다.
1 + 1 # 2, 더하기
2 - 1 # 1, 빼기
4 / 2 # 2.0, 나누기, 결과값 실수
5 // 2 # 2, 나눗셈 후 몫, 결과값 정수
5 % 2 # 1, 나눗셈 후 나머지
2 ** 10 # 1024, 거듭제곱
divmod(5, 2) # (2, 1), 몫과 나머지를 함께 구하기, 튜플
나눗셈 연산자 /의 결과는 실수이고, 몫 연산자 //의 결과는 정수이다.
실수와 정수를 함께 계산하면 실수로 계산된다.
( )
**
*
, /
, 그리고 %
+
와 -
int(숫자)
, int(계산식)
, int('문자열')
: 값을 정수로 만들기, 문자열은 정수로 된 문자열이라야 함float(숫자)
, float(계산식)
, float('문자열')
: 값을 실수로 만들기, 문자열은 실수 또는 정수로 된 문자열이라야 함type(값)
: 객체의 자료형을 알아내기 문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미한다. 숫자라도 따옴표로 둘러싸여 있으면 모두 문자열이라고 보면 된다.
'''(작은따옴표 3개)이나 """(큰따옴표 3개)로 묶고 엔터키를 누르면 줄바꿈이 적용된다.
'''Hello, world!
안녕하세요.
Python입니다.'''
문자열 안에 개행 문자(\n)를 넣으면 따옴표 세 개로 묶지 않아도 여러 줄로 된 문자열을 사용할 수 있다.
'Hello\nPython'
문자열 안에 '(작은따옴표)를 넣고 싶다면 문자열을 "(큰따옴표)로 묶어준다.
"Python isn't difficult"
문자열 안에 "(큰따옴표)를 넣고 싶다면 문자열을 '(작은따옴표)로 묶어준다.
'He said "Python is easy"'
여러 줄로 된 문자열은 작은따옴표 안에 작은따옴표와 큰따옴표를 둘 다 넣을 수 있다. 또한, 큰따옴표 안에도 작은따옴표와 큰따옴표를 넣을 수 있다.
""""Hello"
'Python'"""
작은따옴표 안에 작은따옴표를 넣으려면 작은따옴표 앞에 \(역슬래시)를 붙이면 된다.
'Python isn\'t difficult'
코드 | 설명 |
---|---|
\n | 문자열 안에서 줄을 바꿀 때 사용 |
\t | 문자열 사이에 탭 간격을 줄 때 사용 |
\ | 문자 \를 그대로 표현할 때 사용 |
\' | 작은따옴표(')를 그대로 표현할 때 사용 |
\" | 큰따옴표(")를 그대로 표현할 때 사용 |
불린(boolean) 자료형은 참(True)과 거짓(False)을 나타내는 자료형으로, 값의 일종이다. 첫문자를 항상 대문자로 사용해야 한다.
파이썬에서는 비교 연산자와 논리 연산자의 판단 결과로 True, False를 사용한다. 즉, 비교 결과가 맞으면 True, 아니면 False이다.
숫자 또는 문자가 같은지 비교할 때는 ==(equal), 다른지 비교할 때는 !=(not equal)을 사용한다. 이 때 문자열은 비교할 때 대소문자를 구분한다.
10 == 10 # True
10 != 5 # True
'Python' == 'Python' # True
'Python' != 'python' # False
>, <, >=, <=를 사용하여 큰지, 작은지, 크거나 같은지, 작거나 같은지 비교한다.
10 > 20 # False
10 =< 20 # True
is, is not도 같다, 다르다지만 ==, !=는 값 자체를 비교하고, is, is not은 객체(object)를 비교한다.
논리 연산자는 and, or, not이 있다.
a and b
두 값이 모두 True라야 True
a or b
두 값 중 하나라도 True이면 True
not x
not은 논릿값을 뒤집는다.
비교 연산자(is, is not, ==, !=, <, >, <=, >=)를 먼저 판단하고 논리 연산자(not, and, or)를 판단한다.
https://dojang.io/mod/page/view.php?id=2461 참고하기
정수 0, 실수 0.0이외의 모든 숫자는 True이다. 그리고 빈 문자열 '', ""를 제외한 모든 문자열은 True이다.
단락 평가는 첫 번째 값만으로 결과가 확실할 때 두 번째 값은 확인(평가)하지 않는 방법을 말한다.
# 첫 번째 값이 거짓이므로 두 번째 값은 확인하지 않고 거짓으로 결정
print(False and True) # False
print(False and False) # False
# 첫 번째 값이 참이므로 두 번째 값은 확인하지 않고 참으로 결정
print(True or True) # True
print(True or False) # True
True and 'Python'
'Python'
문자열 'Python'도 불린으로 따지면 True라서 True and True가 되어 True가 나올 것 같지만 'Python'이 나왔다. 왜냐하면 파이썬에서 논리 연산자는 마지막으로 단락 평가를 실시한 값을 그대로 반환하기 때문이다. 따라서 논리 연산자는 무조건 불린을 반환하지 않는다.
본 포스팅은 아래의 사이트를 참고하여 작성되었습니다.
점프투파이썬 https://wikidocs.net/book/1
코딩도장 https://dojang.io/