collections는 유용한 컬렉션 클래스를 많이 제공하는 Python에 내장된 컬렉션 모듈입니다. 1. 카운터 Counter는 나타나는 문자 수를 계산하는 간단한 카운터입니다. >>> import
collections>>> obj =
collections.Counter('applebanana')> >> print(obj)Counter({'a': 4, 'n':
2, 'p': 2, 'e': 1, 'l': 1, 'b': 1 } ) 2.OrderedDict 순서 사전 dict를 사용할 때 키는 순서가 없습니다. dict를 반복할 때 키의 순서를 결정할 수 없습니다. 키의 순서를 유지하려면 OrderedDict:>>> od =
collections.OrderedDict()>>> od['k2']
='k2' >> od['k1'] =
'k1'>> odOrderedDict([('k2',
'k2'), ('k1', 'k1') ]) 또는>>> od =
collections.OrderedDict([('k2','v2'),('k1','v1')])>>> k2',
'v2'), ('k1', 'v1')]) 3.defaultdict 기본 사전은 사전 값 import collectionsnum =
[11,22,33, 44, 55,66,77,88,99] # my_dic 사전 값에 대한 기본 목록 유형 추가 my_dic =
collections.defaultdict(list) for i in num: if i > 66: my_dic[' k1'].append (i) else: my_dic['k2'].append(i)print(my_dic) 4.namedtuple Named Tuple Namedtuple은 사용자 정의 튜플 객체를 생성하고 튜플 요소 수를 지정하는 함수입니다. 튜플의 요소를 참조하기 위해 인덱스 대신 속성을 사용할 수 있습니다. 이런 식으로 튜플의 불변성을 가지며 속성을 기반으로 참조할 수 있는 명명된 튜플을 사용하여 쉽게 데이터 유형을 정의할 수 있습니다.>>>person = collections.namedtuple('pp', [ '이름','나이'])>>>p = person('apple',2)>>>print(p.name)>>>print(p.age) 5 .deque 양방향 큐 리스트를 사용하여 데이터를 저장할 때 인덱스별로 요소에 접근하는 것은 매우 빠르지만, 리스트는 선형 저장이기 때문에 요소를 삽입하고 삭제하는 것은 매우 느리고, 데이터 양이 많을 경우 삽입 및 삭제의 효율성이 떨어집니다. 삭제율이 매우 낮습니다. Deque는 삽입 및 삭제 작업의 효율적인 구현을 위한 양방향 목록으로, 대기열 및 스택에 적합합니다.>>> dli =
collections.deque([1,2,3])>>> ;
dli.append(4)>>> dlideque([1, 2, 3, 4])>>>
dli.appendleft(5) #appendleft 왼쪽에 데이터 삽입> ;> ;> dlideque([5, 1, 2, 3, 4]) 6.queue 단일 항목 대기열(queue 모듈 내) import queueq = queue.Queue()q.put(123)q.put( 456)print(q .qsize())print(q.get())#q.get()은 단일 항목 대기열의 데이터를 순서대로 꺼냅니다. print(q.get())
위 내용은 Python 기본 콘텐츠: 컬렉션 모듈의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!