> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 목록 목록을 어떻게 전치할 수 있나요?

Python에서 목록 목록을 어떻게 전치할 수 있나요?

Patricia Arquette
풀어 주다: 2024-12-25 20:25:11
원래의
544명이 탐색했습니다.

How Can I Transpose a List of Lists in Python?

목록 목록 전치

다음과 같은 목록 목록이 주어진 경우:

l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
로그인 후 복사

우리의 목표는 목록을 전치하여 결과 in:

r = [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
로그인 후 복사

zip 사용

Python의 zip() 함수는 여러 반복 가능 항목의 요소를 단일 튜플 목록으로 결합합니다. zip을 사용하여 원본 목록을 일련의 인수로 전달하여 전치된 목록을 만들 수 있습니다.

result = list(map(list, zip(*l)))
로그인 후 복사

외부 list()는 튜플을 목록으로 변환하고 map() 함수는 이 변환을 다음에 적용합니다. zip 결과의 각 요소.

zip_longest 사용

itertools.zip_longest() 함수는 zip과 유사하지만 iterable의 길이가 다른 경우 데이터를 삭제하지 않습니다. 지정된 채우기 값으로 더 짧은 반복 가능 항목을 채웁니다(기본적으로 없음):

from itertools import zip_longest
result = list(map(list, zip_longest(*l, fillvalue=None)))
로그인 후 복사

설명

전치의 핵심은 zip을 사용하여 원본 목록의 하위 목록. zip() 함수는 동일한 인덱스에 있는 각 하위 목록의 요소 하나를 포함하는 튜플을 생성합니다. 그런 다음 이러한 튜플은 목록으로 변환되어 전치된 목록의 행을 생성합니다.

* 연산자를 사용하여 원본 목록을 zip에 대한 인수로 압축 해제하면 한 줄의 코드로 목록을 전치할 수 있습니다. map() 함수는 결과가 목록의 목록인지 확인하는 데 사용됩니다.

위 내용은 Python에서 목록 목록을 어떻게 전치할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿