람다를 사용하여 목록에서 필터링 된 항목의 인덱스를 얻는 방법은 무엇입니까?

스티븐

과일 목록이 있습니다 [{'name': 'apple', 'qty': 233}, {'name': 'orange', 'qty': '441'}]

orange람다 사용 하기 위해 목록을 필터링하면 list(filter(lambda x: x['name']=='orange', fruits))올바른 dict를 얻지 만 dict의 인덱스를 가져올 수 없습니다. 인덱스는 0이 아닌 1이어야합니다.

필터링 된 항목의 올바른 인덱스를 얻으려면 어떻게합니까?

여기에 이미지 설명 입력

크리스찬 딘

목록 이해력을 enumerate()대신 사용할 수 있습니다 .

>>> fruits = [{'name': 'apple', 'qty': 233}, {'name': 'orange', 'qty': '441'}]
>>> [(idx, fruit) for idx, fruit in enumerate(fruits) if fruit['name'] == 'orange']
[(1, {'name': 'orange', 'qty': '441'})]

댓글에 게시 된 @ChrisRands와 마찬가지로 목록에 filter대한 열거 형 개체를 만들어 사용할 수도 있습니다 fruits.

>>> list(filter(lambda fruit: fruit[1]['name'] == 'orange', enumerate(fruits)))
[(1, {'name': 'orange', 'qty': '441'})]
>>> 

두 가지 방법에 대한 몇 가지 타이밍은 다음과 같습니다.

>>> setup = \
      "fruits = [{'name': 'apple', 'qty': 233}, {'name': 'orange', 'qty': '441'}]"
>>> listcomp = \
     "[(idx, fruit) for idx, fruit in enumerate(fruits) if fruit['name'] == 'orange']"
>>> filter_lambda = \
     "list(filter(lambda fruit: fruit[1]['name'] == 'orange', enumerate(fruits)))"
>>> 
>>> timeit(setup=setup, stmt=listcomp)
1.0297133629997006
>>> timeit(setup=setup, stmt=filter_lambda)
1.6447856079998928
>>> 

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

중복 항목이있는 필터링 된 목록에서 특정 인덱스를 제거하는 방법은 무엇입니까?

목록에서 인덱스를 필터링하는 방법은 무엇입니까?

jq를 사용하여 목록에없는 항목을 필터링하는 방법은 무엇입니까?

pnp powershell을 사용하여 SharePoint Online 목록에서 마지막으로 수정 된 항목의 항목 ID를 얻는 방법은 무엇입니까?

LINQ를 사용하여 목록에서 특정 기준의 항목을 하나만 제외하고 모두 필터링하는 방법은 무엇입니까?

필터링 된 인덱스에서만 min_element를 얻기 위해 인덱스로 범위를 필터링하는 방법은 무엇입니까?

필터링된 목록에서 가장 높은 값을 얻는 방법은 무엇입니까? 하스켈

다른 목록의 ID를 사용하여 목록을 필터링하는 방법은 무엇입니까?

인덱스 번호를 제공하여 목록에서 항목을 얻는 방법은 무엇입니까?

Python-람다 함수를 사용하여 목록의 모든 요소의 배수로 목록을 필터링하는 방법은 무엇입니까?

Swift-배열의 필터링 된 항목의 인덱스를 얻는 방법

mongoDB에서 인덱스 목록을 사용하여 배열 요소를 얻는 방법은 무엇입니까?

람다를 사용하여 두 번째 수준 목록의 객체 속성으로 목록을 필터링하는 방법은 무엇입니까?

다른 항목 목록에서 항목 목록을 필터링하는 방법은 무엇입니까?

유형이 지정된 배열에서 항목의 인덱스를 얻는 방법은 무엇입니까?

정적 필터링 값을 기반으로 재 선택 redux를 사용하여 필터링 된 목록을 생성하는 방법은 무엇입니까?

와일드 카드 문자를 사용하여 목록에서 항목을 필터링하는 방법은 무엇입니까?

Java 8에서 맵 항목의 값인 목록을 필터링하는 방법은 무엇입니까?

num과 같은 필터링된 값의 인덱스를 반환하는 방법은 무엇입니까?

연결된 범위의 람다 내에서 인덱스를 검색하는 방법은 무엇입니까?

미사용 관리자-목록에서 필터링 된 쿼리와 다른 구성 요소를 동기화하는 방법은 무엇입니까?

asp mvc의 첫 번째 드롭 다운 목록에서 선택한 항목에 따라 dropdownlistfor를 필터링하는 방법은 무엇입니까?

Realm React Native의 목록에 포함 된 항목별로 필터링하는 방법은 무엇입니까?

asp.net에서 데이터 목록의 인덱스를 구성하는 방법은 무엇입니까?

두 인덱스 사이에 연결된 목록의 노드를 삭제하는 방법은 무엇입니까?

int 인덱스를 사용하여 TreeMap에서 항목에 액세스하는 방법은 무엇입니까?

Regex를 사용하여 쉼표가없는 항목을 필터링하는 방법은 무엇입니까?

생성 된 우편 번호 목록으로 인구 조사 데이터 (API에서)를 필터링하는 방법은 무엇입니까?

ReactJS에서 Checkbox를 사용하여 목록에 필터를 적용하는 방법은 무엇입니까?

TOP 리스트

  1. 1

    C # 16 진수 값 0x12는 잘못된 문자입니다.

  2. 2

    Matlab의 반복 Sortino 비율

  3. 3

    librosa로 생성 된 스펙트로 그램을 다시 오디오로 변환 할 수 있습니까?

  4. 4

    PhpStorm 중단 점에서 변수 값을 볼 수 없습니다.

  5. 5

    종속 사용자 정의 Lightning 선택 목록 Level2 및 Level3을 설정한 다음 Lightning 구성 요소에서 Level2를 재설정하지만 Level2 캐시 데이터가 저장됨

  6. 6

    Watchdog 큐 이벤트를 사용하는 Python 병렬 스레드

  7. 7

    atob은 인코딩 된 base64 문자열을 디코딩하지 않습니다.

  8. 8

    dev 브랜치에 병합 할 때만 트리거하도록 bitbucket에서 AWS Codebuild로 웹훅을 설정하려면 어떻게해야합니까?

  9. 9

    2 개의 이미지를 단일 평면 이미지로 결합

  10. 10

    Assets의 BitmapFactory.decodeStream이 Android 7에서 null을 반환합니다.

  11. 11

    막대 그래프 위에 선이 표시되지 않음

  12. 12

    Python : 특정 범위를 초과하면 플롯의 선 색상을 변경할 수 있습니까?

  13. 13

    기능 선택을위한 Sklearn Chi2

  14. 14

    Ionic 2 로더가 적시에 표시되지 않음

  15. 15

    EventEmitter <string>의 컨텍스트 'this'가 Observable <string> 유형의 'this'메서드에 할당되지 않았습니다.

  16. 16

    매개 변수에서 쿼리 객체를 선언하는 방법은 무엇입니까?

  17. 17

    openCV python을 사용하여 텍스트 문서에서 워터 마크를 제거하는 방법은 무엇입니까?

  18. 18

    아이디어 Intellij : 종속성 org.json : json : 20180813을 찾을 수 없음, maven에서 org.json 라이브러리를 가져올 수 없음

  19. 19

    일반 메서드에서 클래스 속성에 액세스하는 방법-C #

  20. 20

    식별자는 ORA-06550 및 PLS-00201로 선언되어야합니다.

  21. 21

    함수 호출 사이에 데이터를 저장하는 파이썬적인 방법은 무엇입니까?

뜨겁다태그

보관