【问题描述】定义函数test(lst)来测试列表各元素的各位数上是否含有数字2。返回一个列表,该列表只包含lst中带有数字2的正整数。
【输入形式】一组正整数,以空格隔开。
【输出形式】带有2的正整数列表
【样例输入】38 90 290 32 102 15 221
【样例输出】[290,32, 102, 221]
【样例输入】38 90 31 19 56
【样例输出】None
【样例说明】如果没有带2的正整数,则输出None
def f(p=[]): print('None' if len([x for x in p if x.find('2')>=0])==0 else [int(y) for y in p if y.find('2')>=0]) alist=input() f(alist.split()) 或者: def f(p=[]): print('None' if len(p)==0 else p) alist=input() f([int(x) for x in alist.split() if x.find('2')>=0])
极简带来不必要的计算: