Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.lang.python > #7579

Re: Trovare gli indici degli elementi che corrispondono a un criterio in una lista

From Claudio_F <clau.fin@tin.it>
Newsgroups it.comp.lang.python
Subject Re: Trovare gli indici degli elementi che corrispondono a un criterio in una lista
Date 2015-06-29 23:00 +0200
Organization Aioe.org NNTP Server
Message-ID <mmsbkv$l8c$1@speranza.aioe.org> (permalink)
References <mms9sb$gd7$1@speranza.aioe.org>

Show all headers | View raw


Il 29/06/2015 22:30, Paolo Ferraresi ha scritto:
> Se uso filter ottengo una lista con gli elementi che soddisfano un certo
> criterio, se uso index ottengo la prima occorrenza, ma se volessi
> ottenere una lista con gli indici degli oggetti che soddisfano un certo
> criterio, come dovrei fare?
> Io l'ho fatto così...
>
> def find(f,lst):
>      return [i for i, x in enumerate(lst) if f(x)==True]


Per quanto ne so la list comprehension e` un costrutto molto efficiente 
rispetto alle stesse operazioni realizzate in modo separato. Non so se 
esiste una funzione per svolgere esattamente il compito qui richiesto, 
ma la soluzione che hai trovato mi sembra molto Pythonica (non da 
principiante insomma). Tuttavia va ricordato che le chiamate a funzione 
in Python sono "costose" e vanno limitate al minimo possibile. Dal punto 
di vista della velocita` sarebbe quindi meglio "hardcodare" l'intero 
test nella list comprehension piuttosto che chiamare continuamente una 
funzione, ovviamente si perde la generalita` della funzione.

Back to it.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Trovare gli indici degli elementi che corrispondono a un criterio in una lista Paolo Ferraresi <fp.box@alice.it> - 2015-06-29 22:30 +0200
  Re: Trovare gli indici degli elementi che corrispondono a un criterio in una lista Claudio_F <clau.fin@tin.it> - 2015-06-29 23:00 +0200
  Re: Trovare gli indici degli elementi che corrispondono a un criterio in una lista Riccardo Lemmi <riccardo@reflab.com> - 2015-06-30 11:48 +0200

csiph-web