반응형
색인을 알고 주어진 목록에서 일부 요소를 선택해야합니다. 주어진 목록 [-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]
더 좋은 방법이 있습니까? c = a [b]?
해결 방법
from operator import itemgetter
a = [-2, 1, 5, 3, 8, 5, 6]
b = [1, 2, 5]
print(itemgetter(*b)(a))
# Result:
(1, 5, 5)
import numpy as np
a = np.array([-2, 1, 5, 3, 8, 5, 6])
b = [1, 2, 5]
print(list(a[b]))
# Result:
[1, 5, 5]
그러나 실제로 현재 솔루션은 괜찮습니다. 아마도 그들 모두 중에서 가장 깔끔 할 것입니다.
참조 페이지 https://stackoverflow.com/questions/18272160
반응형
'파이썬' 카테고리의 다른 글
파이썬 ImportError : apiclient.discovery라는 모듈이 없습니다. (0) | 2021.01.10 |
---|---|
파이썬 datetime 형식을 초로 변환 (0) | 2021.01.10 |
파이썬 3D의 Numpy meshgrid (0) | 2021.01.10 |
파이썬 Django는 위젯을 사용하여 읽기 전용 양식 필드를 만듭니다. (0) | 2021.01.09 |
파이썬 배열을 부동 파이썬으로 변환 할 수 없습니다. (0) | 2021.01.09 |
댓글