우리는 파이썬을 배우면서 숫자와 문자열로 프로그래밍을 해왔다.
하지만 숫자가 많을 때에는 불편하지 않았는가?
예를 들어, 2,4,6,8,10 짝수를 저장해야 한다고 했을 때, 변수 하나에 2, 변수 하나에 4.... 이렇게 하면 코드의 가독성이 떨어질 뿐 아니라, 귀한 시간을 낭비하게 된다.
그래서 우리는 리스트라는 것을 배워 이런 불편함을 해소할 것이다.
even = [2, 4, 6, 8, 10]
이런 것이 바로 리스트이다.
다른 프로그래밍 언어에서는 배열이라고도 한다.
(하지만 모든 자료형을 포함시킬 수 있다는 것이 배열과 리스트의 차이점이다.)
리스트명 = [요소1, 요소2, 요소3, .... ]
list1 = [] # list1 = list()와 같다.
list2 = [1, 2, 3]
list3 = [1, 2, 'Hello', 'world']
list4 = ['h', 'e', 'l', 'l', 'o']
list5 = ['Welcome to', 'Python world']
list6 = [1, 2, ['hi', 'hello']]
이 예제처럼, 비어있는 리스트도 가능하고, 리스트 안에는 어떤 자료형이든 가능하다.
심지어 예제의 list6처럼 리스트 안에 리스트를 넣을 수도 있다.
리스트 또한 문자열처럼 인덱싱, 슬라이싱, 연산, 수정, 삭제 모두 가능하다.
# 리스트 인덱싱
a = [1, 2, 3]
print(a[0]) # 1
a = [1, 2, 3, [4, 5]]
print(a[3][0]) # 4
# 리스트 슬라이싱
a = [1, 2, 3, 4, 5]
print(a[0:2]) # [1, 2]
# 리스트 연산
a = [1, 2, 3]
b = [4, 5, 6]
print(a + b) # [1, 2, 3, 4, 5, 6]
a = [1, 2, 3]
print(a * 3) # [1, 2, 3, 1, 2, 3, 1, 2, 3]
a = [1, 2, 3]
print(len(a)) # 3
a = [1, 1, 3]
a[1] = 2
print(a) # [1, 2, 3]
a = [1, 2, 3]
del a[2] # [1, 2]
참고로 del 함수는 파이썬이 자체적으로 가지고 있는 삭제 함수이다.
반응형