<파이썬 라이브러리를 활용한 데이터 분석(2판)> (챕터2-3)
챕터 2
● p74 문자열의 탬플릿이나 형식 지정
template = '{0: .2f} {1:s} are worth US${2:d}'
template.format(4.5560, 'Argentine Pesos',1)
● p78~80 날짜와 시간
from datetime import datetime, date, time
dt = datetime(2011,10,29,20,30,21) #datetime에다가 숫자 6개이면 차례로 Year, month, date, hour, mintue, second 지정됨.
dt.day
dt.minute
dt.date()
dt.time()
dt.strftime('%m/%d/%Y %H:%M') #strftime 매서드는 datetime을 문자열로 만들어줌
datetime.strptime('20091031','%Y%m%d') #문자열을 해석하여 datetime 객체로 만들어줌
** p79에 Datetime 포맷 규칙이 있음
● p80~81 if, elif, else의 구성
if x<0:
print('It is negative')
elif x==0:
print('Equal to zero')
elif 0<x<5:
print('Positive but smaller than 5')
else:
print('Positive and larger than or equal to 5')
● p81 for문의 기본 문법
for value in collection:
if ...
continue
if ...
break
● p82 while문의 기본 문법
조건을 명시하여 해당 조건이 False가 되거나 break문을 사용해 명시적으로 반복을 끝날 때까지 블록 내 코드 수행
챕터3
● p87~ 자료구조와 순차 자료형
1. 튜플: 1차원의 고정된 크기를 가지는 변경 불가능한 순차 자료형
- 쉼표로 구분된 값 대입 / 괄호로 분리하여 값 대입
tup= 4,5,6
tup
(4,5,6)
- 모든 순차 자료형이나 이터레이터는 tuple 매서드를 호출해 튜플로 변환 가능
tuple([4,0,2])
(4,0,2)
tupe = tuple('string')
tup
('s','t','r','i','n','g')
- 튜플의 각 원소는 대괄호 []을 이용해 다른 순차 자료형처럼 접근 가능함
- 튜플에 저장된 객체 자체는 변경 가능하지만 한번 생성되면 각 슬롯에 저장된 객체를 변경하는 것은 불가능함.
(*) 중요 사항
(1) 튜플과 같은 표현의 변수에 튜플 대입시 등포 오른쪽에 있는 변수에서 값을 분리함 (즉, 튜플 내 값에 대해 다른 변수로 값을 끼워넣기 가능) p89~91
(2) 튜플 매서드
- count 매서드: 주어진 값과 같은 값이 몇개 있는지 반환
2. 리스트: 대괄호 []나 list함수를 사용해 생성 가능하고 튜플과 달리 크기나 내용의 변경이 가능함
- append 매서드를 사용해 새로운 값 추가가능 p92
b_list.append('dwarf')
- insert 매서드를 사용해 리스트의 특정 위치에 값 추가가능 p93
b_list.insert(1,'red')
- pop 매서드는 특정 위치의 값을 반환하고 해당 값을 리스트에서 삭제
b_list.pop(2)
- remove 매서드는 리스트 내 값을 삭제하고, 값이 여러개 인경우 리스트의 제일 앞에 위치한 값부터 삭제됨 p93
b_list.remove('foo')
- in예약어/not예약어를 사용해 리스트에 어떤 값이 있는지 검사 가능
'dwarf' in b_list
-+ 연산자, extend 를 이용해 리스트를 합칠 수 있음 p94
x = [4, None, 'foo']
x_extend([7,8,(2,3)])
x = [4, None, 'foo',7,8,(2,3)]
- sort함수를 이용해 정렬 가능, sorted 함수를 통해 일반 순차자료형의 정렬된 복사본 생성 p95
a.sort()
- 내장 bisect모듈은 값을 추가하되, 리스트 정렬이 유지된 상태에서 추가해줌. bisect 모듈 내 bisect 매서드는 리스트를 추가할 수 있는 위치를 반환해주고, bisect모듈의 insort 매서드는 정렬한 상태를 유지한 상태에서 값을 추가함.
- 슬라이싱