책 범위 : 02장 파이썬 프로그래밍의 기초, 자료형 - 점프 투 파이썬 (wikidocs.net)
자료형이란?
문자의 값을 숫자로 인식할 지, 문자로 인식할 지 구분할 수 있게 해줌
*변수의 타입 찾기
a = 1
print(type(a))
#1
숫자형
- 정수형(int) : 1,2,-2
- 실수형(float) : 1.5, 2.256
- 사칙연산
a ** b = 제곱
a // b = 나누기의 몫
a % b = 나누기의 나머지
문자열 자료형
- 문자열 자료형 만드는 4가지 방법 : "(큰 따옴표), '(작은 따옴표), """(큰 따옴표*3), '''(작은 따옴표 *3)
- 문자열에 ', "가 들어가는 경우 그 뒤부턴 파이썬이 문자라고 인식을 하지 못하기 때문에 ', " 교차 사용
or 문자열에 이스케이프 문자(\, 백슬래시) 사용
>>> food = "Python's favorite food is perl"
>>> say = '"Python is very easy." he says.'
>>> food = 'Python\'s favorite food is perl'
>>> say = "\"Python is very easy.\" he says."
- \n : 문자열 사이에 줄바꿈
- \t : 문자열 사이에 탭 간격
- 따옴표를 3개씩 쓰는 경우, 이스케이프 문자 안써도 ', ", 줄바꿈, 탭 간격 모두 인식
즉, 여러 줄이라면 따옴표를 3개씩 쓰자
a = 'Chipscoder\'s blog \nhello, stranger!'
b = '''Chipscoder's blog
hello, stranger!'''
#Chipscoder's blog
#hello, stranger!
- 문자열 더하기, 곱하기도 가능
문자열 인덱싱
- 0부터 카운트
- 음수는 거꾸로 카운트
a = 'Chipscoder\'s blog \nhello, stranger!'
print(a[0])
#C
print(a[-2])
#r
문자열 슬라이싱
- 문자열 자르기
- 0부터 카운트
- 비워놓는 경우 처음부터 or 맨 끝까지
a = '12345Hello'
print(a[:5])
#12345
print(a[5:])
#Hello
print(a[:5:2])
#135
문자열 포매팅
문자열 안의 특정한 값을 바꿔야 할 경우가 있을 때, 문자열 안에 어떤 값을 삽입하는 방법
% 뒤에 넣고 싶은 값을 넣음 (따옴표를 여러번 안써도 되는 장점)
1. 문자열 포맷 코드 사용
- 값 그대로 대입
a = "I eat %d apples." % 3
#I eat 3 apples.
- 변수 대입
number = 10
day = "three"
a = "I ate %d apples. so I was sick for %s days." % (number, day)
#I ate 10 apples. so I was sick for three days.
*문자열 포맷 코드
- %s : 문자열(string)
- 모든 형식의 문자열 가능, 숫자를 넣을 때도 가능(문자열로 바뀌어 들어감)
- %c : 문자 1개(Character)
- %d : 정수(Integer)
- 포매팅 연산자 %d와 %를 같이 쓸 때는 %%를 사용
- %f : 실수 (Float)
- 소수점 자리 수 자르기 가능
#기본 실수형
a = "%f" % 3.42134234
#3.42134234
#소수점 자르기
# %간격.소수점자리수f
b = "%0.4f" % 3.42134234
#3.4213
2. format 함수 사용
- 값 그대로 대입
a = "I eat {0} apples".format("five")
#I eat five apples
#0이 five로 교체
- 변수 대입
number = 10
day = "three"
a = "I ate {0} apples. so I was sick for {1} days.".format(number, day)
#I ate 10 apples. so I was sick for three days.
- 이름 대입
a = "I ate {number} apples. so I was sick for {day} days.".format(number=10, day=3)
#I ate 10 apples. so I was sick for 3 days.
#python v3.6 이상
number = "10"
a = f"I ate {number} apples."
#I ate 10 apples.
문자열 관련 함수
- .count : 문자열에서 해당 문자가 몇개 있는지
- .find : 문자열에서 해당 문자중 첫 번째의 인덱스를 리턴 (없을 경우 -1)
- .index : 문자열에서 해당 문자중 첫 번째의 인덱스를 리턴 (없을 경우 에러남)
- .upper : 대문자로 바꾸기
- .lower : 소문자로 바꾸기
- .strip : 공백 없애기
- .replace : 문자 교체
- .split : 문자열을 띄어쓰기 기준으로 잘라 리스트로 만듦
리스트
변수 여러 개를 묶어 하나의 변수로 관리
a = [ ]
b = [1, 2, 3]
c = ['Life', 'is', 'too', 'short']
d = [1, 2, 'Life', 'is']
e = [1, 2, ['Life', 'is']]
print(e[2])
#['Life', 'is'] - 문자열 그대로 출력
print(e[2][0])
#Life - 문자열 안의 인덱스를 찾아 출력
#리스트 값 수정하기
b = [1, 2, 3]
b[0:2] = [10,11] #슬라이싱에 새로운 값들 대입
#[10, 11, 3]
#리스트 값 삭제하기 - 빈 어레이 사용
b = [1, 2, 3]
b[0:2] = [] #슬라이싱에 빈 어레이 대입
#[3]
#리스트 값 삭제하기 - del 함수 사용
b = [1, 2, 3]
del b[0] #삭제할 값의 인덱스 삽입
#[2,3]
리스트 관련 함수
- .append : 마지막에 값 추가
- .extend : 마지막에 리스트 추가
b = [1, 2, 3]
b.extend([4, 5])
print(b)
#[1,2,3,4,5]
- .insert : 특정 인덱스에 값 추가 (인덱스, 넣을 값)
b = [1, 2, 3]
print(b.insert(0,0)) #[0,1,2,3]
- .remove : 특정 값 제거 (인덱스가 아닌 값을 넣음)
b = [1, 2, 3, 10]
print(b.remove(10)) #[1,2,3]
- .pop : 리스트의 맨 마지막 요소를 리턴하고 그 요소는 삭제
b = [1, 2, 3, 10]
print(b.pop())
print(b)
#10
#[1, 2, 3]
- .sort : 문자의 경우 알파벳 순, 숫자의 경우 크기 순 정렬
- .reverse : 리스트 거꾸로
- .count : 리스트에서 해당 값이 몇개 있는지
'Back-end > Python' 카테고리의 다른 글
조코딩 강의-Python이란 무엇인가? (0) | 2023.02.20 |
---|