我们都知道一个列表对象存在 append()、pop() 等方法,那么如何查看其具体有多少属性及方法呢?难度系数:★☆☆☆☆
上期问题在整数列表中,如果一个整数的出现频次和它的数值大小相等,我们就称这个整数为「幸运数」。给定一个整数数组arr,请从中找出并返回最大的幸运数。
arr = [3,5,2,7,3,1,2,4,8,9,3]
上期问题参考答案
此题难度不大,但要想用精炼的代码写出来,却需要很高的技巧。
>>> arr = [3,5,2,7,3,1,2,4,8,9,3]
>>> z = zip(set(arr), map(arr.count, set(arr))) # 统计个元素出现的频次
>>> f = filter(lambda x:x[0]==x[1], z) # 找出全部幸运数
>>> sorted(f, key=lambda x:x[0])[-1][0] # 排序,取最大值
3