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

Python의 목록 내 고유 하위 목록 계산

<시간/>

Python 목록에는 하위 목록도 포함될 수 있습니다. 하위 목록 자체는 더 큰 목록 내에 중첩된 목록입니다. 이 기사에서는 주어진 목록 내에서 고유한 하위 목록의 수를 계산하는 방법을 볼 것입니다.

카운터 사용

Counter는 Dictionary의 하위 클래스이며 요소와 해당 개수를 추적하는 데 사용됩니다. 또한 요소가 Dict 키로 저장되고 해당 개수가 dict 값으로 저장되는 정렬되지 않은 컬렉션으로 간주됩니다. 따라서 아래 예에서는 하위 목록이 있는 목록을 직접 가져옵니다.

예시

from collections import Counter
# Given List
Alist = [['Mon'],['Tue','Wed'],['Tue','Wed']]
print(Counter(str(elem) for elem in Alist))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

Counter({"['Tue', 'Wed']": 2, "['Mon']": 1})

추가() 사용

또한 목록의 요소를 반복하고 이를 튜플로 설정한 다음 동일한 요소가 발생할 때마다 1을 계속 추가할 수도 있습니다. 마지막으로 하위 목록을 키로 표시하고 해당 개수를 값으로 표시하는 새 목록을 인쇄합니다.

예시

# Given List
Alist = [['Mon'],['Tue','Wed'],['Tue','Wed'], ['Tue','Wed']]

# Initialize list
NewList = {}

# Use Append through Iteration
for elem in Alist:
   NewList.setdefault(tuple(elem), list()).append(1)
for k, v in NewList.items():
   NewList[k] = sum(v)

# Print Result
print(NewList)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

{('Mon',): 1, ('Tue', 'Wed'): 3}