# 파이썬 제어문



!!시퀀스 자료형은 추후에 배울 이터레이터, 제너레이터등을 위하여 필수적으로 알아야 하는 지식입니다!!


1. 시퀀스 자료형


시퀀스 자료형은 원소들을 가지고 있는 데이터 구조이며 멤버쉽 테스트를 지원하는 자료형입니다. 이는 메모리에 상주하는 데이터 구조로써, 보통 모든 원소 값을 메모리에 저장합니다. 파이썬에서 지원하는 시퀀스 자료형은 아래와 같습니다.


- list

- dictionary

- set

- tuple

- string


특정한 자료구조가 원소를 포함하고 있는지 판단 가능하면 시퀀스자료형이라고 생각하시면 됩니다. set, list, dictionary, tuple 등은 간단히 생각해도 원소를 담고 있는데 string은 이해가 쉽지 않죠?

C언어에서 string을 생각해보면 간단합니다. C 언어에서는 char* string = "my name is Rekt77"과 같은 형태로 문자열을 선언하고 각각 문자에대해 인덱스로 접근하는것이 가능합니다.

파이썬에서도 마찬가지 입니다. string은 연속적인 문자의 집합입니다. 고로 인덱스로 접근하는 것이 가능하고 각각의 문자로 분리가능하기 때문에 한 자료구조안에 원소를 담고 있다고 볼 수 있습니다.


1
2
3
4
5
assert 1 in [1,2,3# list
assert 1 in (1,2,3# tuple
assert 1 in {1,2,3# set
assert 1 in {1:"a",2:"b",3:"c"#dictionary
assert "1" in "123" # string
cs


위의 코드는 시퀀스 자료형의 멤버쉽 테스트입니다. assert 문은 시퀀스 자료형의 멤버쉽 테스트를 위해 쓰이는 명령어입니다. 조건이 맞지 않을 경우에는 Assertion Error를 출력하여 자료구조 테스트로 자주 사용됩니다.



2. 이터러블(iterable)


이터러블하다의 의미는 사전적 정의로 '개별 원소를 반복적으로 셀 수 있는' 이라는 뜻을 가지고 있습니다. 이는 파이썬에서 상당히 중요한 의미를 지니는데, 반복문의 사용시 자료구조 내에 포함되어 있는 원소 하나하나에 접근할 수 있는 객체를 뜻합니다. 앞서 말씀드린 시퀀스 자료형들은 전부 이터러블한 객체입니다. 즉 인덱스나 키를 이용하여 접근할 수 있습니다. 

앞으로 for문 같은 반복문에서 자주 보게될 형태이므로 반드시 기억해 놓으셔야 합니다.


+ Recent posts