지금까지 파이썬의 기본 자료형인 불리언, 정수형, 실수형 그리고 문자열에 대해 정리했습니다. 이제부터 고급 자료형인 리스트(list), 튜플(tuple), 딕셔너리(dictionary), 셋(set)에 대해 정리해 볼 예정입니다. 먼저 리스트(list)와 튜플(tuple) 대해 알아보도록 하죠.

리스트(list)

리스트는 파이썬 자료형 중의 하나로, 문자열, 숫자형 등을 포함하는 집합이라고 볼 수 있습니다.

리스트 생성

리스트명 = [요소1, 요소2, 요소3, 요소4, …]

이렇게, 숫자로만 구성, 문자로만 구성, 혼합해서 구성, 또 리스트 속에 리스트를 포함시킬 수 있습니다.

인덱싱, 슬라이싱

문자열처럼 인덱싱과 슬라이싱이 가능합니다.

대괄호([]) 안에 오는 숫자는, 리스트의 오프셋 번호로 문자열과 같이 0부터 시작합니다.
[0]은 첫번째 요소, [1]은 두번째 .. 이렇게 사용할 수 있으며, 음수 오프셋 사용이 역시 가능하여, 마지막 요소는 [-1]이 됩니다.
위 예시와 같이 문자열처럼 슬라이싱이 가능합니다.

리스트 속 리스트 인덱싱, 슬라이싱

 

인덱싱으로 리턴시킨 결과도 리스트이기 떄문에 한번 더 인덱싱 및 슬라이싱이 가능합니다.

리스트 결합, 복제

결합

 

+기호로 두 개 이상의 리스트의 결합이 가능합니다.

복제

 

*기호로 리스트를 반복시킬 수 있습니다.

리스트 값 변경

리스트에 새로운 값을 대입하여 리스트를 변경시킬 수 있습니다.
또, 슬라이싱을 통해 여러 연속하는 값을 변경할 수도 있습니다.

리스트 함수

리스트(list) 에 사용가능한 함수들이 있습니다. 하나씩 정리해 보겠습니다.

sort()

정렬시키는 함수입니다. 오름차순으로 정렬되며, 숫자는 0,1,2,3… 알파벳은 a,b,c,d… 순으로 정렬됩니다.

reverse()

리스트를 뒤집는 함수입니다. 마지막 요소가 첫번째 요소가 되고, 첫번째 요소가 마지막 요소가 됩니다.

append()

리스트의 마지막 요소 뒤로 새로운 요소를 추가합니다.
단일요소는 물론, 리스트를 추가시킬 수 있습니다.

remove()

괄호 안의 요소를 리스트에서 찾아 가장 앞선 인덱스부터 하나만 제거합니다.

이처럼 list1.remove(1) 을 실행하면, 첫번째 1이 제거됩니다. 다시 한번 실행하면, 두번째 1이 제거됩니다.

insert()

원하는 위치에 새로운 요소를 추가할 수 있습니다.
insert(x,y)로 선언하는데, x에는 인덱스가, y에는 요소값을 입력합니다.

오프셋4 위치에 문자열 ‘a’를 추가하는 예제입니다.

pop()

원하는 위치의 요소를 리턴함과 동시에, 제거합니다.

pop! 하고 뽑아버린다고 생각하면 됩니다..ㅎㅎ

이처럼 [2]위치의 요소인 5를 리턴하였고, 다시 리스트를 확인해보면 5가 제거되어 있음을 확인할 수 있습니다.

index()

내가 찾는 요소값이 위치한 인덱스를 리턴합니다.

위의 예에서 요소 ‘c’는 인덱스 2위치에, 요소 ‘a’는 인덱스 0 위치에 있음을 알 수 있습니다.

count()

특정 요소가 리스트 안에 몇개 존재 하는지 찾을 수 있습니다.

 

존재여부 확인 in

특정 요소가 리스트 안에 있는지 확인합니다. 결과가 True나 False로 리턴됩니다.

리스트 안에 ‘c’요소는 있기 때문에 True가, ‘r’요소는 없기 때문에 False 가 리턴되었습니다.

튜플

리스트와 거의 유사한데, 리스트와 차이점은

  1. 리스트는 값 변경 가능하지만 튜플은 불가능
  2. 리스트는 [], 튜플은 ()
    이다.

튜플 생성

 

이처럼 튜플은 () 로 둘러쌓이며, 리스트와 같이 숫자, 문자 모두 요소로 포함 가능합니다.
특이한 점은 괄호를 생략해도 튜플로 인식하고 생성된다는 것입니다.

괄호를 생략 하더라도 튜플이 생성됩니다.

튜플 인덱싱, 슬라이싱

튜플 결합, 복제

마무리

여기까지 리스트(list) 와 튜플(tuple)에 대해 정리하였습니다. 다음 포스팅에서는 딕셔너리(dictionary)와 셋(set)에 대해 정리하도록 하겠습니다.

댓글 남기기

Close Menu