인덱스를 기반으로 목록에서 요소를 효율적으로 추출하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-16 04:16:03
원래의
868명이 탐색했습니다.

How to Efficiently Extract Elements from a List Based on Indices?

색인별로 여러 목록 요소에 액세스

색인을 기반으로 목록에서 특정 요소를 추출하려면 다양한 접근 방식을 사용할 수 있습니다. 목록 [-2, 1, 5, 3, 8, 5, 6]에서 인덱스 1, 2, 5를 가진 요소를 추출하는 예를 생각해 보세요.

목록 이해 사용

질문에서 알 수 있듯이 목록 이해를 효과적으로 사용할 수 있습니다.

a = [-2, 1, 5, 3, 8, 5, 6]
b = [1, 2, 5]
c = [a[i] for i in b]
로그인 후 복사

이 접근 방식은 인덱스 목록 b를 효율적으로 반복하고 목록 a에서 해당 요소를 추출합니다.

operator.itemgetter 사용

Python의 Operator.itemgetter 함수는 간결한 솔루션을 제공합니다.

from operator import itemgetter
a = [-2, 1, 5, 3, 8, 5, 6]
b = [1, 2, 5]
print(itemgetter(*b)(a))
로그인 후 복사

NumPy 사용

NumPy를 사용하는 경우 대체 접근 방식을 제공합니다.

import numpy as np
a = np.array([-2, 1, 5, 3, 8, 5, 6])
b = [1, 2, 5]
print(list(a[b]))
로그인 후 복사

성능 고려 사항

선택은 목록 크기, 사용 빈도에 따라 제공된 목록 이해는 일반적으로 작은 목록에 대해 잘 수행됩니다. 그러나 목록이 크거나 자주 액세스하는 경우에는 성능이 향상되므로 itemgetter 또는 NumPy가 더 나을 수 있습니다.

위 내용은 인덱스를 기반으로 목록에서 요소를 효율적으로 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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