我正在努力了解return的作用以及-1的意义,因为更改-1不会返回列表中最不常见的值。
def getSingle(arr):
from collections import Counter
c = Counter(arr)
return c.most_common()[-1] # return the least common one -> (key,amounts) tuple
arr1 = [5, 3, 4, 3, 5, 5, 3]
counter = getSingle(arr1)
print (counter[0])
答案 0 :(得分:3)
Python列表的简洁功能之一是您可以从列表末尾开始索引。您可以通过向[]
传递一个负数来实现。它实际上将len(array)
视为第0个索引。因此,如果您想要array
中的最后一个元素,则可以调用array[-1]
。
您的return c.most_common()[-1]
语句所做的只是调用c.most_common
并返回结果列表中的最后一个值,这将为您提供该列表中最不常见的项目。本质上,该行等效于:
temp = c.most_common()
return temp[len(temp) - 1]