기본자료형
1. 자료형
- 자료의 종류를 구분해 놓은 것
- 자료의 종류를 구분한 이유
→ 컴퓨터에게 어떻게 연산을 하는지 알려주기 위해 자료의 타입을 구분함
2. 수치자료형
- 정수(int)와 실수(float)로 구분
3. 수치 자료형의 특징
- input함수를 사용 시, 사용자가 입력한 값이 string으로 인식됨
※ type함수를 사용하면 자료 형의 타입을 확인 할 수 있음
# Example
num = input('수를 입력하세요 : ')
print(type(num))
# 결과 :
# 수를 입력하세요 : 45
# <class 'str'> (str은 문자열)
- 입력 받은 값을 숫자형식으로 변경하려면 원하는 값 형태로 강제 형 변환을 함
- 정수형으로 입력 받기 위해서는 int( )를 사용
# Example
num1 = int(input('1st : '))
num2 = int(input('2st : '))
print(num1 + num2)
# 결과 :
# 1st : 3
# 2st : 3
# 6
- 실수형으로 입력받기 위해서는 float( )를 사용
※ 나눗셈 연산의 경우, 데이터형과 상관없이 모두 float로 할당됨
# Example
num1 = float(input('1st : '))
num2 = float(input('2st : '))
print(num1 + num2)
# 결과 :
# 1st : 3
# 2st : 3
# 6.0
4. 문자형 자료형
- 문자 그대로 이용
- 작은 따옴표(' ') or 큰 따옴표(" ")를 이용
- 사용자로부터 입력 받은 값을 사용한다면, 입력함수만 사용
5. 문자형의 특징
- 문자형 병합
- 두 수를 더하는 연산자는 '+'임
- 이 연산자를 문자형 사이에 사용하여 문자형 데이터들을 합침
# Example
first_name = input('first_name : ')
last_name = input('last_name : ')
print(first_name + last_name)
# 결과 :
# first_name : 홍
# last_name : 길동
# 홍길동
- 문자형의 길이
- 문자열의 경우, 총 몇 개의 문자가 있는지 파악할 때 사용
- len( )은 문자 or 문자열의 길이를 알려줌
# Example
id = input('ID : ')
print(len(id))
condition = 'I am Happy'
print(len(condition))
# 결과 :
# oh
# 2
# 10
- 문자형의 인덱스
- 문자열의 각 문자마다 인덱스 번호(왼쪽부터는 0부터 시작, 오른쪽부터는 -1부터 시작)를 매김
- 인덱스 번호는 0번부터 시작. 또한, 문자 뿐만 아니라 공백(space)도 인덱스가 부여됨
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
g | o | o | d | l | u | c | k |
# Example
str = 'good luck'
str[0] # g
- 문자열의 일부분 추출
- slice 문자열의 인덱스 번호를 활용하여 일부분을 추출하는 것
- 문자열을 이룹분 추출할 때 사용하는 범위
- [n:m] : n번째부터 m -1 번째까지를 의미
- [:m] : 처음부터 m - 1 번째까지를 의미
- [n:] : n부터 문자열의 마지막까지를 의미
# Example
str = 'good luck'
str[5:9] # 'luck'
str[5:] # 'luck'
str[:4] # 'good'
6. 연습문제
# Example1
# 사용자로부터 연필 & 펜의 개수를 입력받아 총 가격을 계산하는 프로그램
pencil = int(input('연필 개수 : ')
pen = int(input('펜 개수 : ')
total_price = pencil * 400 + pen * 800
print(total_price)
# 결과 :
# 연필 개수 : 5
# 펜 개수 : 3
# 4400
# Example2
# 3과목의 점수를 입력받아 합계와 평균을 계산하는 프로그램
A = int(input('A과목 : ')
B = int(input('B과목 : ')
C = int(input('C과목 : ')
total = A + B + C
avg = total / 3
print('평균: %.2f' % avg)
print('총점: %d' % total)
# 결과 :
# A과목: 70
# B과목: 80
# C과목: 90
# 평균: 80.00
# 총점: 240
# Example3
# 음악CD를 30% 할인할 때, 구입하는 음악CD의 총 가격을 계산해 주는 프로그램
# 음원 1개당 400원
# 총 가격의 30% 할인
CD = int(input('구입 음악CD 개수 : ')
price = CD * 400
DC = price * 30 / 100
total_price = price - DC
print('총 가격 : %d' % price + "원")
print('할인금액 : %d' % DC + "원")
print('총 구입 가격 : %d' % total_price + "원")
# 결과 :
# 구입 음악 개수 : 9
# 총 가격 : 3600원
# 할인금액 : 1080원
# 총 구입 가격 : 2520원
# Example4
# 이름과 연락처를 입력박아 연락처의 경우 '-'기호를 제외하고 저장하는 프로그램
# 사용자로부터 이름과 연락처를 받음
# 이름과 연락처는 변수로 선언
name = inpu('이름 : ')
tel = input('연락처 (예:000-0000-0000): ')
print(name, tel[:3] + tel[4:8] + tel[9:])
# 결과 :
# 이름 : 홍길동
# 연락처 : 010-1234-5678
# 홍길동 01012345678
'Programming Language > Python' 카테고리의 다른 글
컬렉션 자료형 - 2. 튜플 & 딕셔너리 (0) | 2022.08.09 |
---|---|
컬렉션 자료형 - 1. 리스트 자료형 (0) | 2022.08.07 |
입력과 출력 (0) | 2022.08.06 |
변수와 연산자 - 4. 연습문제 (0) | 2022.08.06 |
변수와 연산자 - 3. 연산자 (0) | 2022.08.04 |