여러가지 자료를 저장할 수 있는 자료.
대괄호[]를 사용하고 쉼표(,)로 구분.
요소(element)
: 리스트 내부에 넣는 자료
뒤에서부터 요소 선택하기: 대괄호에 음수 넣기
리스트 접근 연산자의 이중 사용
>>> a = [1, 2 "abc"]
>>> a[2][1]
b
+
: 연결
*
: 반복
len
: 요소의 개수 확인
# append: 리스트 뒤에 요소 추가
리스트명.append(요소)
# insert: 리스트 중간에 요소 추가
리스트명.insert(위치, 요소)
# extend: 리스트 뒤에 여러 요소 추가
리스트명.extend(요소1, 요소2, 요소3)
# del: 리스트의 특정 인덱스에 있는 요소 제거
# 범위 지정해서 한번에 제거 가능
del 리스트명[인덱스]
# pop: 제거할 위치에 잇는 요소 제거
# 매개변수를 입력하지 않으면 마지막 요소 제거
리스트명.pop(인덱스)
# remove: 값을 지정해서 제거
리스트명.remove(값)
# clear: 리스트 내부의 요소 모두 제거
리스트.clear()
특정 값이 리스트 내부에 있는지 확인
값 in 리스트
반복할 수 있는 자료형과 조합하여 사용.
특정코드를 반복해서 실행할 때 사용하는 구문
딕셔너리, 리스트, 문자열 모두 가능
for 반복자 in 반복할 수 있는 것:
코드
# 0부터 a까지
range(a)
# a부터 b-1까지
range(a, b)
# a부터 b-1까지 c 증가폭으로 (차이로)
range(a, b, c)
# 팁: range(a: b+1)로 표기하면 직관적으로 보기 좋다.
반대로 반복
# 역반복문
for in reverse(range(a)):
코드
reversed 함수의 결과는 제너레이터이기 때문에 반복문과 조합할 때는 결과를 여러 번 활용하지 않음
반복문 구문 내부에서 사용 시 reversed()함수를 곧바로 넣어서 사용해야 함 (필요한 시점에 사용)
키를 기반으로 값을 저장.
중괄호{}로 선언.
'키:값' 형태를 쉼표로 연결
# 기본 형태
변수 = {
키1: 값1
키2: 값2
}
# 새로운 값 추가
딕셔너리[새로운 키] = 새로운 값
# 값 제거
del 딕셔너리명[키]
# get 함수: 존재하지 않는 키에 접근할 경우 에러를 발생시키지 않고 None 출력
딕셔너리명.get(존재하지 않는 키)
불 표현식이 참인 동안 코드를 계속 반복 실행
while 불 표현식:
문장
break: 반복문을 벗어날 때 사용. 무한 반복문을 만들고 내부의 반복을 벗어날 때 많이 사용.
continue: 현재 반복을 생략하고 다음 반복으로 넘어갈 때 사용하는 키워드
min
: 리스트 내부에서 최솟값을 찾음
max
: 리스트 내부에서 최댓값을 찾음
sum
: 리스트 내부에서 값을 모두 더함
reversed
: 리스트를 뒤집을 때 사용
enumerate
: 리스트의 요소를 반복할 때 현재 인덱스가 몇 번째 인지 확인할 때 사용.
# 기본 형태
리스트 이름 = [표현식 for 반복자 in 반복할 수 있는 것]
# if구문 포함
리스트 이름 = [표현식 for 반복자 in 반복할 수 있는 것 if 조건문]
items()
: 딕셔너리의 키와 값을 조합해서 쉽게 반복문을 작성할 수 있도록 함
join()
: 리스트의 요소를 문자열로 연결
문자열.join(문자열로 구성된 리스트)
이터러블(iterable): 반복할 수 있는 것.
내부에 있는 요소들을 차례차례 꺼낼 수 있는 객체
(리스트, 딕셔너리, 문자열, 튜플 등)
iterator
: next() 함수를 적용해 하나하나 꺼낼 수 있는 요소
cf. reversed 함수가 리스트를 바로 리턴하지 않고 이터레이터를 리턴하는 이유:
메모리 효율성을 위해 (기존에 있던 리스트를 활용해서 작업하는 것이 후러씬 효율적이기 때문)
윤인성, 『혼자 공부하는 파이썬』, 한빛미디어