Operaciónes con lista

Arnau Sanchez arnau en ehas.org
Mie Mayo 10 13:53:13 CEST 2006


Catalin, si se trata de hacer una solución con una línea, la tuya me 
parece perfecta... pero como dice Hernán, depende del tipo de lista, si 
está ordenada o no, etc. Con una lista muy grande tu solución será muy 
ineficiente. En tal caso, mejor (como apunta Hernán), primero asegúrate 
que esté ordenada, encuentra el punto clave y de allí un split hasta el 
final.

arnau

Hernan Martinez Foffani wrote:

> Dependerá si la lista viene ordenada o no y del tamaño
> que tenga.
> Si está ordenada, podrías buscar el elemento inferior y
> quedarte con la rebanada desde allí hasta el final.
> Como buscar dependerá del tamaño de la lista.
>
> On 5/10/06, Catalin Lungu <lcatalin en siadv.com> wrote:
>
>> Hola,
>> Me gustaria hacer lo siguiente:
>>
>> l = [10, 50, 70, 90, 150, 200, 300]
>> a = 65
>>
>> Queria devolver una lista con todos los elementos mayor que a y el 
>> siguiente menor elemento.
>> Lo he hecho asi. Que os parece:
>>
>> [max([p for p in l if p < a])] + [p for p in l if p > a]
>>
>> Hay otra forma mejor?
>>
>> Gracias,
>> Catalin
>> _______________________________________________
>> Python-es mailing list
>> Python-es en aditel.org
>> http://listas.aditel.org/listinfo/python-es
>>
>------------------------------------------------------------------------
>
>_______________________________________________
>Python-es mailing list
>Python-es en aditel.org
>http://listas.aditel.org/listinfo/python-es
>  
>




Más información sobre la lista de distribución Python-es