1. enumerate

이 함수는 순차 자료형에서 현재 아이템의 색인(index)을 함께 처리하고자 할 때 흔히 사용한다. 주로 사용하는 패턴은 순차 자료형에서 값과 그 위치를 dict에 넘겨주는 것이다.

(some_list라는 리스트와 mapping이라는 빈 dict를 만들어주고 enumerate함수를 사용하여 순서대로 mapping안에 자료를 넣는 함수이다. mapping[v]에서 v는 key값이 될 것이고, i는 value값이 된다.)

 

2. sorted

순차 자료형에 sorted함수를 사용하면 자료가 정렬되어 다시 반환된다.

(숫자의 경우 크기 순으로 다시 정렬되어 결과가 나오며, 문자의 경우 a-z순으로 정렬되어 결과가 나온다.)

 

3. zip

여러개의 리스트나 튜플 또는 다른 순차 자료형을 서로 짝지어서 튜플의 리스트를 생성한다.

(zip으로 묶어준 상태에서 print를 하면 결과값은 <zip at 0xdf8c5e4740>으로 나오므로 list를 함께 써줘야 한다)

만약 자료형의 크기가 다른 것을 넘겨받는다면 어떻게 될까?

(원래는 [('foo', 'one', False), ('bar', 'two', True), ('baz', 'three')]를 예상할 수도 있지만, 실제로는 가장 짧은 크기가 기준이 된다.)

zip함수는 enumerate와 함께 사용되기도 한다.

(i는 순차대로 0, 1, 2가 결과값이 되고, seq1, seq20번째, 1번째, 2번째 값이 i의 순서에 맞게 결과가 나오게 된다.)

zip함수를 사용하여 이렇게 짝지어진 순차 자료형을 다시 풀어낼 수도 있다. 이를 사용해서 리스트의 로우, 컬럼의 변환이 가능하다

(pitcher에는 3개의 튜플이 있고, 1개의 튜플에는 2개의 값이 있다. 각 튜플의 첫 번째 값은 first_names에 들어가고 두 번째 값은 last_names에 들어가게 된다.)

 

4. reversed

순차 자료형을 역순으로 가져온다.

(reversed를 쓸 때 가장 많이 하는 실수는 이것이 제너레이터라는 점을 잊어버리고 그냥 사용한다는 점이다. 꼭 list()나 for문으로 모든 값은 다 받아오기 전에는 순차 자료형을 생성하지 않는다는 점을 명심해야 한다.)

'Data organization > 개념정리' 카테고리의 다른 글

Comprehension(리스트, 딕셔너리)  (0) 2021.02.12
파이썬 연산(집합)  (0) 2021.02.03
딕셔너리(Dictionary)  (0) 2021.02.03
리스트 활용 방법  (0) 2021.01.27
튜플 생성 방법 및 분리 방법  (0) 2021.01.27

+ Recent posts