- 1.
def func(x):
return x.isalnum()
seq=['sda2','dsad','421','!!!!']
print filter(func,seq)
这里isalnum函数 ,表示检测一个字符串是否由字母和数字组成(单独由一个组成也可),返回布尔类型。filter函数表示根据函数的返回值,对一组元素进行过滤。
- 2.
>>> map(str,range(10))
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
>>> map(int,range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
map函数返回一个所要求类型的序列。
- 3.
seq=['foo','x11','x22','!!!']
print [x for x in seq if x.isalnum()]
x=filter(lambda x:x.isalnum(),seq)
print x
numbers=[2,3,4,5,5,1,2,3]
print reduce(lambda x,y:x+y,numbers)
这里第一种采用列表推导式的方法来找到仅由字母和数字组成的字符串,第二种使用lambda的方法来创建小函数,同时借助filter方法。
第三个reduce函数,是将序列的前两个值给函数使用,并且将它们的返回值和第三个元素继续联合使用,直到序列处理完毕。