如何返回匹配的最大数字?例如:
def maximum_number([4, 5, 6, 5, 2])
返回2
,因为5是最大数字并且出现两次。
答案 0 :(得分:3)
将您的列表放入collections.Counter()
object并询问最佳结果:
>>> from collections import Counter
>>> lst = [4, 5, 6, 5, 2]
>>> Counter(lst)
Counter({5: 2, 2: 1, 4: 1, 6: 1})
>>> Counter(lst).most_common(1)
[(5, 2)]
>>> Counter(lst).most_common(1)[0]
(5, 2)
>>> Counter(lst).most_common(1)[0][1]
2
Counter.most_common()
method按计数返回前N个结果;上面的代码请求1个最高结果,从返回的列表中获取一个结果并仅提取计数:
#!/bin/bash
#Get the year
curr_year=$(date +"%Y")
FILE_NAME=/test/codebase/wt.properties
key=wt.cache.master.slaveHosts=
prop_value=""
getproperty(){
prop_key=$1
prop_value=`cat ${FILE_NAME} | grep ${prop_key} | cut -d'=' -f2`
}
#echo ${prop_value}
getproperty ${key}
#echo "Key = ${key}; Value="${prop_value}
arr=( $prop_value )
for i in "${arr[@]}"; do
echo $i | head -n1 | cut -d "." -f1
done
答案 1 :(得分:1)
这可以帮到你......
lst = [4, 5, 6, 5, 2]
max([lst.count(i) for i in lst])
答案 2 :(得分:0)
如图所示使用计数器效果很好。但是,它无助于理解模式。所以这是一个手动执行的配方
循环完成后,找到dict中的最高值并使用其键
这一切都可以在Python中有效地完成,使用dict.get(key, 0)+1
和dict.iteritems()
(对于Python-2; items(),对于Python-3)。