Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 컨테이너 데이터 유형

<시간/>

컬렉션에는 dict, list, set 등과 같은 Python의 범용 내장 컨테이너에 대한 대안인 일부 컨테이너 데이터 유형이 있습니다.

일부 컨테이너는 -

시니어 번호 컨테이너 및 설명
1 이름이 지정된 튜플()
이름 필드를 사용하여 튜플 하위 클래스를 만드는 데 사용됩니다.
2 데크
목록 유형 데이터를 사용하는 대기열
3 카운터
해시 테이블 개체를 계산하는 dict의 하위 클래스
4 체인맵
여러 매핑의 단일 보기를 만드는 데 사용됩니다.
5 OrderedDict
데이터가 순서대로 추가되는 dict의 하위 클래스
6 사용자 목록
더 쉽게 액세스할 수 있는 목록 래퍼입니다.

이 모듈을 사용하려면 −

를 사용하여 가져와야 합니다.
컬렉션 가져오기

데크 개체

Deque는 기본적으로 왼쪽에서 오른쪽으로 초기화되는 스택 및 큐 구조의 일반화입니다. 목록 개체를 사용하여 데크를 만듭니다.

일부 Deque 관련 메서드는 -

시니어 번호 방법 및 설명
1 추가(x)
데크의 오른쪽에 요소 x 추가
2 왼쪽 추가(x)
데크의 왼쪽에 요소 x 추가
3 지우기()
데크 지우기
4 개수(x)
데크에서 x의 발생 횟수를 센다.
5 색인(x[, 시작[,중지]])
x의 위치를 ​​반환합니다. 시작과 중지가 정의된 경우 해당 범위에서 찾습니다.
6 삽입(i, x)
위치 i의 데크에 x를 삽입합니다.
7 팝()
오른쪽에서 요소 제거 및 반환
8 팝레프트()
왼쪽에서 요소 제거 및 반환
9 역방향()
데크의 내용을 뒤집습니다.
10 회전(n =1)
deque를 오른쪽으로 n번 회전

예시 코드

컬렉션을 colmy_deque =col.deque('124dfre')print(my_deque)print("팝된 항목:" + str(my_deque.pop())))print("왼쪽에서 꺼진 항목:" + str(my_deque)로 컬렉션 가져오기 .popleft()))print(my_deque)

출력

deque(['1', '2', '4', 'd', 'f', 'r', 'e'])팝된 항목:왼쪽에서 e팝된 항목:1deque(['2', '4', 'd', 'f', 'r'])

카운터 개체

카운터는 dict 유형 개체의 하위 클래스입니다. 키 값을 계산하는 데 사용할 수 있습니다. 카운터는 정수 값만 허용합니다.

일부 카운터 관련 방법은 -

시니어 번호 방법 및 설명
1 요소()
카운터 값이 보유하는 만큼의 요소를 반환합니다.
2 가장 흔한([n])
이 메서드는 카운터에서 가장 일반적으로 사용되는 n개의 요소 목록을 반환합니다. n을 지정하지 않으면 모두를 반환합니다.
3 빼기(반복 가능 또는 매핑)
키가 일치하는 두 개의 카운터 개체에서 카운터 값을 뺍니다.
4 업데이트(반복 가능 또는 매핑)
키가 일치하는 값을 바꾸지 않고 값을 추가합니다.

예시 코드

컬렉션을 coltext_list로 가져오기 =['ABC','PQR','ABC','ABC','PQR','Mno','xyz','PQR','ABC','xyz']my_counter =col.Counter() for element in text_list:my_counter[element] +=1print(my_counter)print(my_counter.most_common(2))

출력

카운터({'ABC':4, 'PQR':3, 'xyz':2, 'Mno':1})[('ABC', 4), ('PQR', 3)] 

체인맵 개체

ChainMap은 사전을 단일 단위로 캡슐화하는 데 사용됩니다.

일부 ChainMap 회원은 -

시니어 번호 방법 및 설명
1 지도
해당 값과 함께 키를 반환하는 데 사용됩니다.
2 new_child(m =없음)
이 방법은 체인의 첫 번째 위치에 새 사전을 삽입하는 데 사용됩니다.

예시 코드

컬렉션을 colcon_code1 ={'India' :'IN', 'China' :'CN'}con_code2 ={'France' :'FR', 'United Kingdom' :'GB'}code ={'Japan'으로 가져오기 ' :'JP'}chain =col.ChainMap(con_code1, con_code2)print("초기 체인:" + str(chain.maps))chain =chain.new_child(code) #Insert New Childprint("최종 체인:" + str(chain.maps))

출력

초기 체인:[{'인도':'IN', '중국':'CN'}, {'프랑스':'FR', '영국':'GB'}]최종 체인:[{' 일본':'JP'}, {'인도':'IN', '중국':'CN'}, {'프랑스':'FR', '영국':'GB'}]