- 자료형이란?
프로그래밍을 할 때 쓰이는 숫자, 문자열 등 자료 형태로 사용하는 모든 것
1. 숫자형 - 숫자 형태로 이루어진 자료형으로 정수, 실수, 8진수, 16진수 로 구분
- 정수형(Integer)
>>> a = 123 (양의 정수)
>>> a = -132 (음의 정수)
>>> a= 0
- 실수형(Floating-point)
>>> a = 1.3
>>> a = -1.34E10 -> -1.34*10의 10승을 의미 / E나 e 모두 사용 가능
8진수와 16진수는 잘 사용하지 않으나 16진수의 경우 메모리 볼때 종종 나오기도 함.
- 숫자형과 관련한 대표적 연산자
ㄱ. a**b -> a의 b 제곱값
>>> a=2
>>> b=3
>>>a**b
8
ㄴ. a % b -> 나눗셈의 나머지값 돌려주는 연산자
>>> 5 % 3
2
>>> 3 % 5
3 -> 나누어 지지 않을 때는 원래 숫자가 출력
ㄷ. a // b -> 나눗셈 후 몫을 돌려주는 연산자
>>> 24//5
★참고할 것 : int/int = float 으로 출력! ex) 4/2 = 2가 아니라 2.0
2. 문자열 자료형 - 따옴표로 둘러싸여 있으면 모두 문자열!!
-> 가능한 따옴표는 ' ' , " " , ''' ''' , """ """ 4가지 경우 모두 가능
ㄱ. 문자열에 따옴표 표시할 때
방법1 : 문자열에 표시된 따옴표와 다른 종류의 따옴표로 문자열 둘러싸기
방법2 : 문자열 바로 앞에 백슬래시(\) 사용하기
ㄴ. 여러 줄인 문자열을 변수에 대입할때
방법1 : 이스케이프 코드인 \n 삽입
방법2 : ''' 또는 """ 사용하기
>>>multiline = '''
...Life is too short
...you need python
...'''
>>>print(multiline)
★이스케이프 코드 : 프로그래밍 시 사용할 수 있도록 미리 정의해둔 문자 조합. 주로 정렬의 용도로 사용. 활용빈도가 높은 것은 \n, \t, \\, \',\"
ㄷ. 문자열 연산
1) 문자열 더해서 연결 : 변수에 문자열 대입 -> 변수 더하기
2) 문자열 곱셈 : 변수에 문자열 대입 -> 곱하기 , 이때 문자열과 숫자 곱하면 문자열 반복하여 출력
3) 문자열 길이 계산 : len 함수 이용
>>> a = python
>>> len(a)
6
ㄹ. 문자열 인덱싱(indexing)과 슬라이싱(slicing) - 인덱싱은 가르키는 것, 슬라이싱은 잘라내는 것!
1) 인덱싱 : 변수 a에 저장한 문자열의 각 문자마다는 번호가 지정됨. 0부터 시작
>>> a= you need python
>>> a[2]
'u'
a[-1]의 경우는 뒤에서부터 세어 첫번재가 되는 문자 의미 -> 'n'
2) 문자열 슬라이싱 -> a[n : m] 자리 번호 n부터 번호 m-1까지 문자열을 잘라내는 것. 공백 문자 역시 번호가 매겨짐
a[:n] -> 처음부터 자리번호 n-1 까지 슬라이싱
a[n:] -> 자리번호 n 부터 끝까지 슬라이싱
★ 문자열 자료형은 그 요솟값을 변경할 수 없는 immutable한 자료형임!
ex) pithon 문자열을 python 으로 바꾸기 위해서는?
>>> a='pithon'
>>> a[:1]
'p'
>>>a[2:]
'thon'
>>> a[:1] + 'y' + a[2:]
'python'
ㅁ. 문자열 포매팅
1) 문자열 포맷 코드
%s 문자열 -> 어떤 형태의 값이는 변환해 넣을 수 있음
%d 정수(int)
%f 부동 소수(실수)
ex) 2개 이상의 값 넣어 포매팅
>>> number = 10
>>> day = "two"
>>> " I ate %d apples. so I was sick for %s days." %(number, day)
' I ate 10 apples. so I was sick for three days.'
★문자열 내 포매팅 자리에 '%'를 표시하고 싶을때에는???? -> %d%% 로 표시
2) 포맷 코드와 숫자 함께 사용하기
- 정렬과 공백
>>> "%10s" % "hi"
' hi' -> 전체 길이가 10개인 문자열 공간에서 대입되는 값을 오른쪽 정렬하고 그 앞 나머지는 공백 if, %-10s 의 경우 왼쪽 정렬이겠지?
- 소수점 표현
>>> " %0.4f" %3.42136234
'3.4214' -> 소수점 네번째 자리까지만 나타내고 반올림되서 표현됨. %f는 소수점 여섯째 자리까지 표현 가능
3) format 함수를 사용한 포매팅
- 숫자, 문자열, 숫자 값 가진 변수 대입
>>> "I eat {0} apples" . format(3) <- 3 자리에 "three" 넣을 수도
' I eat 3 apples'
>>> number = 5
>>> " I eat {0} apples " . format(number) <- 변수 대입도 OK
' I eat 5 apples '
- 2개 이상의 값 넣기도 OK : 문자열이 {0}, {1}, ... 과 같은 인덱스 항목이 format함수의 입력값으로 순서에 맞게 바뀜. 더 편리하게 {name}의 형태도 쓰기 가능. 단, name = value 값이 반드시 있어야해. 혼용도 가능.
>>> number = 10
>>> day = " three "
>>> " I ate {0} apples. so I was sick fo {1} days. " . format(number, day)
...
>>> " I ate {number} apples. so I was sick fo {day} days." . format(number=10, day=3)
...
>>> " I ate {0} apples. so I was sick for {day} days. " . format(10, day=3)
...
- 정렬 방식 : 화살표 방향을 기억하면 됨.
왼쪽 정렬 -> {0:<10} . format("hi") 오른쪽 정렬 -> {0:>10} . format("hi") 가운데 정렬 -> {0:^10} . format("hi")
공백 채우기 : 채워넣을 문자 값은 정렬 문자 <,>,^ 바로 앞에 넣기
>>> " {0:$^10}" . format("hi")
$$$$hi$$$$
- 소수점 표현 -> "{0:10.4f}" . format(y) {또는} 문자 표현 -> "{{and}}" . format()
'인공지능 융합교육 > 파이썬린이의 파이썬 공부(21년1학기)' 카테고리의 다른 글
6회차 집합 자료형, 불 자료형, 변수 (0) | 2021.11.16 |
---|---|
5회차 튜플자료형과 딕셔너리 자료형 (1) | 2021.11.15 |
4회차 리스트 자료형 (1) | 2021.11.15 |
3회차 f문자열 포매팅, 문자열 관련 함수 (0) | 2021.10.03 |
1회차 파이썬 기초 문법[사칙 연산, 조건문, 반복문] (4) | 2021.09.08 |
댓글