시퀀스 자료형
1. 시퀀스 자료형
시퀀스 자료형(Sequence type)은 Python의 자료형 중 하나로, 여러 개의 항목들이 순서대로 나열된 구조를 나타내는 데이터 유형입니다. 시퀀스 자료형은 다음과 같은 공통적인 연산 및 특성을 가집니다.
Python에서 제공하는 연속된 데이터 타입인 시퀀스 자료형에는 다음과 같은 것들이 있습니다.
- 리스트(List)
- 문자열(String)
- 튜플(Tuple)
- 바이트(Bytes)
- 바이트배열(Bytearray)
- 범위(range)
이전에 공부했던 문자열 자료형을 예를 들어 시퀀스 자료형의 특징을 설명해 보도록 하겠습니다.
바이트와 바이트배열은 부록으로 두었습니다.
1.1 인덱싱 (Indexing)
각 항목은 고유한 인덱스를 통해 접근할 수 있습니다. 첫 번째 항목의 인덱스는 0이며, 그 다음 항목은 1, 2, ... 순으로 증가합니다. 음수 인덱스를 사용하여 끝에서부터 역으로 접근할 수도 있습니다.
1.2 슬라이싱 (Slicing)
시퀀스의 일부분을 선택하여 새로운 시퀀스를 생성할 수 있습니다.
1.3 특정 항목의 포함 여부(Member)
in
및 not in
키워드를 사용하여 시퀀스에 특정 항목이 포함되어 있는지 확인할 수 있습니다.
1.4 연결 및 반복 (Iteration)
+
연산자를 이용해 시퀀스를 연결할 수 있으며, *
연산자를 이용하여 반복할 수 있습니다.
1.5 내장 함수
len()
, max()
, min()
, count()
등의 여러 내장 함수를 지원합니다. 내장 함수는 각 자료형에서 더 깊이 다뤄보겠습니다.
시퀀스 자료형들은 Python에서 매우 중요한 역할을 하며, 다양한 연산 및 기능을 제공하여 개발자에게 유용하게 활용됩니다.
2. 시퀀스 자료형의 패킹과 언패킹
파이썬의 패킹(packing)과 언패킹(unpacking)은 데이터를 그룹화하거나 그룹에서 분해하는 간결한 방법을 제공합니다. 이러한 기능은 코드를 더 간결하고 가독성 있게 만들어 줍니다.
2.1 패킹 (Packing)
패킹은 여러 개의 데이터를 하나의 변수에 담는 과정을 의미합니다. 튜플 패킹을 통해 살펴보겠습니다. 통해 볼 수 있습니다.
2.2 언패킹 (Unpacking)
언패킹은 패킹된 데이터를 여러 개의 변수로 분배하는 과정을 의미합니다.
더 다양한 형태를 살펴보도록 하겠습니다.
이러한 언패킹은 아래와 같은 반복문에서도 사용될 수 있습니다.
10 20
100 200
10 20
100 200
여기서 각각 10과 20이 언패킹되어 i와 j로 들어간 것을 확인할 수 있습니다.
2.2.1 별표(*)를 이용한 언패킹
별표(*
)를 사용하면, 여러 개의 요소를 한번에 변수로 할당할 수 있습니다. 이는 특히 리스트나 튜플에서 일부만 변수로 할당하고 나머지를 다른 변수에 할당할 때 유용합니다.