1. 자료형이란?
- 자료형(data types)은 프로그래밍을 할 때 사용되는 모든 자료(데이터)의 형태를 의미한다.
- 현실 세계에는 이름, 나이, 주소, 성별 등 자료의 종류가 굉장히 다양하다.
- 따라서 어떤 형태의 자료를 처리할 것인지 알아야만, 그 자료를 올바르게 처리하여 원하는 결과물을 만들 수 있다.
- 파이썬에서는 아래와 같이 자료형을 구분한다.
2. 숫자형
2-1. 정수형(int)
- 양의 정수, 음의 정수, 0을 뜻한다.
- 정수형 혹은 int 타입이라고 말한다.
- 정수형 자료를 출력해 보자.
print(100)
print(0)
print(-25)
결과는
100
0
-25
- type() 내장함수를 사용하여 자료형을 알 수 있다
print(type(100))
print(type(0))
print(type(-25))
<class 'int'>
<class 'int'>
<class 'int'>
2-2. 실수형(float)
- 소수점이 포함된 숫자를 뜻한다.
- 실수형 혹은 float 타입이라고 말한다.
- 실수형 자료를 출력해 보자.
print(1.2)
print(-3.56)
1.2
-3.56
- type() 내장함수를 사용하여 자료형을 알 수 있다
print(type(1.2))
print(type(-3.56))
print(type(4.0)) # 정수형 4라고 생각할 수 있지만, 소수점이 존재하므로 실수형이다.
<class 'float'>
<class 'float'>
<class 'float'>
3. 문자열
3-1. 문자열이란?
- 한글, 알파벳 등과 같은 문자들의 집합을 뜻한다.
- 문자열 혹은 string 타입이라고 말한다.
- 문자열은 작은따옴표(’) 혹은 큰따옴표(”)로 감싸서 표기한다.
print('Hello Python')
print('파이썬')
print('123')
print('#$%^&*')
print("Hello Python")
print("파이썬")
print("123")
print("#$%^&*")
모두 똑같이 출력된다
Hello Python
파이썬
123
#$%^&*
type을 통해 확인하면
print(type('python'))
print(type("python"))
<class 'str'>
<class 'str'>
- 문자를 배열로 처리하는 c와 다르게 python에선 문자열을 기본 데이터 타입으로 제공한다. 내장된 데이터 타입으로 처리한다는 뜻이다. 간단한 코드로 c와 파이썬의 문자 입출력 코드의 차이를 보여주겠다.
#include <stdio.h>
int main() {
char str[100];
printf("문자열을 입력하세요: ");
scanf("%s", str);
printf("입력한 문자열: %s\n", str);
return 0;
}
str_input = input("문자열을 입력하세요: ")
print("입력한 문자열:", str_input)
이렇게 간단히 처리가 가능하다.
문자열 사용 시 주의사항
- 공백(’ ‘)과 빈 문자열(’’)도 눈에 보이지 않을 뿐이지 하나의 문자열로 취급된다.ㅇ
print(' ') # 공백
print('') # 빈 문자열
2. 작은따옴표와 큰따옴표는 반드시 짝을 맞춰주어야 한다. 섞어서 쓰면 에러가 발생한다.
print('Hello Python")
3. 따옴표 안에 따옴표를 표현할 경우에는 서로 다르게 작성해야 한다.
print("큰따옴표 안에 '작은따옴표' 사용하기")
print('작은따옴표 안에 "큰따옴표" 사용하기')
4. 숫자 123과 문자열 ‘123’은 엄연히 다르다. (똑같이 123으로 출력된다고 해서 같은 자료라고 생각하면 안 된다.)
print(123)
print('123')
print(type(123))
print(type('123'))
4. 불린형
- 참(True)과 거짓(False)을 뜻한다.
- 불린형 혹은 boolean 타입이라고 말한다. (논리형이라고도 한다.)
type() 내장함수를 사용하여 boolean 형태의 자료형을 확인해보자
print(type(True))
print(type(False))
<class 'bool'>
<class 'bool'>
5. 명시적 형 변환
형 변환(typecasting)이란 특정 타입의 자료를 다른 타입의 자료로 변환하는 것을 말한다.
사용자는 파이썬의 내장 함수를 사용하여 의도적으로 타입을 변환할 수 있는데, 이를 명시적 형 변환이라고 한다.
# 정수형에서 실수형으로 형 변환
num_int = 10
num_double = float(num_int)
print("정수에서 실수로 변환:", num_double)
# 실수형에서 정수형으로 형 변환
num_double2 = 10.5
num_int2 = int(num_double2)
print("실수에서 정수로 변환:", num_int2)
# 문자형에서 정수형으로 형 변환
character = 'A'
ascii_value = ord(character)
print("문자에서 정수로 변환:", ascii_value)
# 정수형에서 문자형으로 형 변환
num_int3 = 65
character2 = chr(num_int3)
print("정수에서 문자로 변환:", character2)
10.0
10
65
A
bool()
불린형이 아닌 자료형을 불린형으로 변환할 때 사용하는 함수
놀랍게도 자료형에는 참과 거짓이 있다. 즉 정수형, 실수형, 문자열이 참과 거수짓으로 평가될 수 있다는 말이다.
0, 0.0, '', [] 과 같은 비어있음을 뜻하는 값은 모두 False(거짓)으로 취급된다
# 숫자를 bool 값으로 변환
num1 = 0
bool_num1 = bool(num1)
print("숫자 0을 bool 값으로 변환:", bool_num1)
num2 = 10
bool_num2 = bool(num2)
print("숫자 10을 bool 값으로 변환:", bool_num2)
# 문자열을 bool 값으로 변환
str1 = ""
bool_str1 = bool(str1)
print("빈 문자열을 bool 값으로 변환:", bool_str1)
str2 = "Hello"
bool_str2 = bool(str2)
print("문자열 'Hello'를 bool 값으로 변환:", bool_str2)
# 리스트를 bool 값으로 변환
list1 = []
bool_list1 = bool(list1)
print("빈 리스트를 bool 값으로 변환:", bool_list1)
list2 = [1, 2, 3]
bool_list2 = bool(list2)
print("리스트 [1, 2, 3]를 bool 값으로 변환:", bool_list2)
False
True
False
True
False
True
다음 시간엔 변수를 알아보도록 하겠다
'Language > Python' 카테고리의 다른 글
코딩 테스트를 위한 파이썬 메서드 정리 (26) | 2024.07.12 |
---|---|
[Python] 조건문, 반복문 (35) | 2024.06.11 |
[Python] 변수 (1) | 2024.04.28 |
[Python] 파이썬에 대하여 (2) | 2024.04.23 |