Tengo datos recopilados ingenuamente de listas de dependencia de paquetes.¿Cómo puedo filtrar elementos de una lista en Python?
Depende: foo bar baz> = 5.2
termino con
d = set(['foo','bar','baz','>=','5.2'])
no quiero que los valores numéricos y los operandos.
En Perl Me
@new = grep {/^[a-z]+$/} @old
pero no puedo encontrar una manera de ejemplo, pasar remove() una lambda, o algo.
Lo más cerca que he llegado es feo:
[ item != None for item in [ re.search("^[a-zA-Z]+$",atom) for atom in d] ]
que me consigue un mapa de qué valores del conjunto que quiero ... si el orden del conjunto es repetible? Sé que ese no es el caso en los hashes de Perl.
Sé cómo iterar. :) Estoy tratando de hacerlo de la manera correcta Pythonesque
Eche un vistazo a esta publicación (que es su tipo de pregunta al revés): http://stackoverflow.com/questions/1112444/perl-equivalent-of-python-list-comprehension/1112462 – Telemachus
OT observación: El La forma idiomática de probar None en Python es "is". Use "item is not none" en lugar de "item! = None" –