>  기사  >  백엔드 개발  >  Python - 튜플 목록의 첫 번째 요소를 두 번째 요소로 그룹화

Python - 튜플 목록의 첫 번째 요소를 두 번째 요소로 그룹화

王林
王林앞으로
2023-09-14 15:49:021329검색

Python - 将元组列表中的第一个元素按第二个元素进行分组

Python에서는 사전을 사용하거나 itertools.groupby() 메서드를 사용하고 컬렉션의 defaultdict를 사용하는 등 다양한 메서드를 사용하여 두 번째 요소의 값을 기반으로 튜플 목록의 요소를 그룹화할 수 있습니다. 튜플 목록에서 첫 번째 요소를 두 번째 요소로 그룹화한다는 것은 동일한 두 번째 요소를 가진 튜플이 단일 요소 그룹으로 그룹화될 수 있음을 의미합니다. 이 기사에서는 튜플 목록의 두 번째 요소를 기반으로 첫 번째 요소를 쉽게 그룹화할 수 있도록 이러한 메서드를 구현하는 방법에 대해 설명합니다.

방법 1: 사전을 사용하세요

이 방법에는 사전을 사용하여 요소를 그룹화하는 방법이 포함됩니다. 이 방법은 사전의 키-값 쌍을 활용하여 첫 번째 요소를 저장하고 두 번째 요소를 키로 사용합니다.

문법

으아아아

여기서 대괄호 표기법은 사전의 특정 키에 값을 할당하는 데 사용됩니다. 키가 이미 있으면 해당 키와 연결된 목록에 값이 추가됩니다. 그렇지 않으면 새 키-값 쌍이 생성됩니다.

아래 예에서는 먼저 빈 사전 grouped_data를 초기화합니다. 그런 다음 데이터 목록의 각 튜플에 대해 두 번째 요소를 키(item[1])로 추출하고 첫 번째 요소를 값(item[0])으로 추출합니다. 그런 다음 키가 grouped_data에 이미 존재하는지 확인합니다. 그렇다면 해당 키와 관련된 기존 값 목록에 값을 추가합니다. 그렇지 않으면 키가 두 번째 요소이고 값이 첫 번째 요소를 포함하는 새 목록인 새 키-값 쌍을 만듭니다. 마지막으로 grouped_data 사전을 반복하고 각 키와 해당 값을 인쇄합니다.

으아아아

출력

으아아아

방법 2: itertools.groupby() 사용

itertools.groupby() 함수는 특정 기준에 따라 요소를 그룹화하는 또 다른 효율적인 방법을 제공합니다. 이 방법을 사용하려면 두 번째 요소를 기준으로 입력 데이터를 정렬해야 합니다.

문법

으아아아

여기서 itertools 모듈의 groupby() 함수는 groupby 객체를 반복합니다. 이 함수는 키와 동일한 값을 가진 연속 항목 집합을 반환합니다. 그런 다음 키와 그룹을 사용하여 그룹 사전에 키-값 쌍을 만듭니다. 여기서 키는 고유 값이고 값은 그룹화된 항목 목록입니다.

아래 예에서는 itertools 모듈에서 groupby() 함수를 가져옵니다. groupby() 함수를 사용하려면 그룹화 키를 기준으로 입력 데이터를 정렬해야 합니다. 따라서 sorted() 함수를 사용하여 데이터 목록을 정렬하고 람다 함수를 주요 인수로 제공하여 두 번째 요소(x[1])를 기반으로 정렬을 지정합니다. 그런 다음 그룹화된 요소의 키와 반복자를 반환하는 groupby() 함수의 출력을 반복합니다. 각 그룹에 대해 키를 추출하고 해당하는 첫 번째 요소(item[0])의 목록을 만듭니다.

으아아아

출력

으아아아

방법 3: 컬렉션의 defaultdict 사용

컬렉션 모듈의 defaultdict 클래스는 튜플 목록의 요소를 그룹화하는 편리한 방법을 제공합니다. 각 키의 기본값으로 새 목록을 자동으로 생성하여 그룹화 프로세스를 단순화합니다.

문법

으아아아

여기서 구문은 컬렉션 모듈의 defaultdict() 함수를 사용하여 기본값이 빈 목록인 그룹이라는 defaultdict 개체를 초기화합니다. 코드의 두 번째 줄은 키(항목)를 사용하여 그룹 사전의 해당 키와 연결된 목록에 액세스하고 항목을 목록에 추가합니다.

아래 예에서는 컬렉션 모듈에서 defaultdict 클래스를 가져옵니다. grouped_data 사전을 초기화할 때 defaultdict(list)를 사용하여 기본값을 빈 목록으로 설정합니다. 그런 다음 데이터 목록을 반복하여 두 번째 요소를 키(item[1])로 추출하고 첫 번째 요소를 값(item[0])으로 추출합니다. defaultdict를 사용하면 해당 키와 관련된 목록에 값을 직접 추가할 수 있습니다.

으아아아

출력

으아아아

결론

이 기사에서는 Python에서 다양한 방법을 사용하여 튜플 목록의 첫 번째 요소와 두 번째 요소를 그룹화하는 방법에 대해 논의했습니다. 사전을 사용하면 그룹화된 데이터를 쉽게 저장하고 액세스할 수 있습니다. itertools.groupby() 함수는 효율적인 솔루션을 제공하지만 데이터를 정렬해야 합니다. 또한 defaultdict 클래스는 각 키에 대한 기본값으로 목록을 자동으로 생성하여 그룹화 프로세스를 단순화합니다.

위 내용은 Python - 튜플 목록의 첫 번째 요소를 두 번째 요소로 그룹화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제