# 1601.py print filter (lambda x: ord(x)<68,'ABCDEAB') # ABCAB ####################################### def pari (x): return x%2==0 v=xrange(1,21) print filter(pari,v) # [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] ####################################### v=['Roma','Ferrara','Bologna','Pisa'] print filter(lambda x: len(x)>4,v) # ['Ferrara', 'Bologna'] ####################################### imp = [['Rossi',2000],['Verdi',3000], ['Gentili',1800],['Bianchi',3400], ['Tosi',1600],['Neri',2800]] imp3000=filter(lambda x: x[1]>=3000,imp) for x in imp3000: print x[0], print # Verdi Bianchi ####################################### def controimmagine(f,lx,lb): c=[] return filter(lambda x: f(x) in lb,lx) def f (a): (x,y)=a; return x+y la=[[1,1],[2,3],[1,2],[0,1],[0,4],[2,2],[1,0]] for x in la: print x,f(x) print controimmagine(f,la,[1,4]) # [1, 1] 2 # [2, 3] 5 # [1, 2] 3 # [0, 1] 1 # [0, 4] 4 # [2, 2] 4 # [1, 0] 1 # [[0, 1], [0, 4], [2, 2], [1, 0]]