Scusate, ho una domanda stupidissma su operator.itemgetter.<br><br>Ho una stringa fatta cosí: <br>>>> dati = '1010010101010101010001'<br>inoltre, ho una lista con gli indici degli elementi che vorrei estrarre dalla stringa precedente: <br>
>>> indici = [1, 2, 5, 16, 20]<br><br>ho pensato di utilizzare operator.itemgetter per ottenere tutti i valori corrispondenti agli indici desiderati, senza dover fare cicli.<br>per esempio, al posto di:<br>>>> for index in indici:<br>
... print dati[index]<br>vorrei fare:<br>>>> g = operator.itemgetter(indici)<br>>>> g(dati)<br><br>Il problema é che questo codice non funziona, perché operator.itemgetter non accetta una lista come parametro, ma solo una serie di interi specificati ognuno come un parametro a parte.<br>
Questo funziona:<br>>>> g = operator.itemgetter(1, 2, 3, 5, 6)<br>ma questo no:<br>>>> g = operator.itemgetter([1, 2, 3, 5, 6])<br><br>questo comportamente mi sembra strano... esiste un metodo per convertire una lista in un parametro accettabile da operator.itemgetter? O una maniera alternativa per ottenere lo stesso risultato? <br>
<br>Many thanks :)<br><br clear="all"><br>-- <br>Giovanni Dall'Olio, phd student<br>Department of Biologia Evolutiva at CEXS-UPF (Barcelona, Spain)<br><br>My blog on bioinformatics: <a href="http://bioinfoblog.it">http://bioinfoblog.it</a><br>
<br>