list는 복수개의 값을 담을 수 있는 데이터 구조
list는 생성 된 후 변경이 가능(mutable)
a = [] #비어있는 리스트도 가능
a = list()
b = [1, 2, 3]
c = ['Life', 'is', 'too', 'short']
d = [1, 2, 'Life', 'good']
e = [1, 2, ['Life', 'good']]
list는 순서를 가지고 있으며 그것을 index라 표현한다.
index번호는 '0'부터 시작한다.
a = [1, 2, 3]
a[2]
3 #결과값
#indexing을 통해 출력한 element들의 value를 연산하여 출력도 가능
a[0] + a[2]
4
# list의 맨 마지막 index는 '-1'이다
a[-1]
3
변수뒤에 '[start:stop:step]'를 붙여 slicing한다
start : 시작index번호
stop : 끝나는 index번호(단, 포함하지 않음)
step : index간 step(간격)
a = [1, 2, 3, 4, 5]
a[0:2]
[1, 2]
a[:2]
[1, 2]
a[2:]
[3, 4, 5]
a[:5]
[1, 2, 3, 4, 5]
a[:4:2]
[1, 3]
#List의 길이를 구하기 위해서는 'len()'함수를 사용
len()
a = [1, 2, 3]
len(a)
3
# 길이는 3 , index는 0, 1, 2
#del a[x]는 x번째 요소값을 삭제하는 함수
a = [1, 2, 3]
del a[1]
a
[1, 3]
#슬라이싱도 사용 가능
a = [1, 2, 3, 4, 5]
del a[2:]
a
[1, 2]
#append(x)는 리스트의 맨 마지막에 x를 추가하는 함수
a = [1, 2, 3]
a.append(4)
a
[1, 2, 3, 4]
#리스트 안에는 어떤 자료형도 추가 가능
a.append([5,6])
a
[1, 2, 3, 4, [5, 6]]
#sort 함수는 리스트의 요소를 순서대로 정렬
a = [1, 4, 3, 2]
a.sort()
a
[1, 2, 3, 4]
#알파벳 순서로 정렬도 가능
a = ['a', 'c', 'b']
a.sort()
a
['a', 'b', 'c']
#reverse 함수는 리스트를 역순으로 뒤집음
a = ['a', 'c', 'b']
a.reverse()
a
['b', 'c', 'a']
#index(x) 함수는 리스트에 x 값이 있으면 x의 위치 값 출력
a = [1,2,3]
a.index(3)
2
a.index(1)
0
#insert(a, b)는 리스트의 a번째 위치에 b를 삽입하는 함수
a = [1, 2, 3]
a.insert(0, 4)
a
[4, 1, 2, 3]
a.insert(1,5)
a
[4,5,1,2,3]
#remove(x)는 리스트에서 첫 번째로 나오는 x를 삭제하는 함수
a = [1, 2, 3, 1, 2, 3]
a.remove(3)
a
[1, 2, 1, 2, 3]
#pop()은 리스트의 맨 마지막 요소를 삭제
a = [1,2,3]
a.pop()
a
[1, 2]
#pop(x)는 리스트의 x번째 요소를 삭제
a = [1,2,3]
a.pop(0)
a
[2, 3]
#count(x)는 리스트 안에 x가 몇 개 있는지 조사하여 그 개수를 돌려주는 함수
a = [1,2,4,2,1,1,3,1]
a.count(1)
4
#extend(x)에서 x를 더해주는 함수
a = [1,2,3]
a.extend([4,5])
a
[1, 2, 3, 4, 5]
생성된 후 변경이 불가능한 리스트
a = (1, 2, 3)
b = 3, 4, 5
c = ('a', 'b', ('ab', 'cd'))
삭제와 수정외에는 list와 동일한 함수 사용!