iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python面试题之统计哈希列表中最多元素
  • 956
分享到

Python面试题之统计哈希列表中最多元素

2024-04-02 19:04:59 956人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

问题 有一个元素序列,想知道在序列中出现次数最多的元素是什么 解决方案 collections 模块中的 Counter 类转让给女士为此问题所设计的。它甚至有一个非常方便的most

问题

有一个元素序列,想知道在序列中出现次数最多的元素是什么

解决方案

collections 模块中的 Counter 类转让给女士为此问题所设计的。它甚至有一个非常方便的most_common()方法可以直接告诉我们答案。

为了说明用法,假设有一个列表,列表中是一系列的单词,我们想找出哪些单词出现的最为频繁。

下面是我们的做法:


Words = [
'look', 'into', 'my', 'eyes', 'look', 'into', 'my', 'eyes',
'the', 'eyes', 'the', 'eyes', 'the', 'eyes', 'not', 'around', 'the',
'eyes', "don't", 'look', 'around', 'the', 'eyes', 'look', 'into',
'my', 'eyes', "you're", 'under'
] 
from collections import Counter
word_counts = Counter(words)
top_three = word_counts.most_common(3)
print(top_three)
# Outputs [('eyes', 8), ('the', 5), ('look', 4)]

讨论可以给 Counter 对象提供任何可哈希的对象序列做为输入。在底层实现中,Counter 是一个字典,在元素和它们出现的次数间做了映射。例:


word_counter['not']
# 1
word_counter['eyes']
# 8

如果想手动增加计数,只能简单地自增即可:


morewords = ['why','are','you','not','looking','in','my','eyes']
for word in morewords:
    word_counts[word] += 1 
print(word_counts['eyes'])
# 9

另一种方法是使用update()方法:


word_counts.update(morewords)

Counter对象还可以同各种数学运算操作结合起来使用:


>>> a = Counter(words)
>>> b = Counter(morewords)
>>> a
Counter({'eyes': 8, 'the': 5, 'look': 4, 'into': 3, 'my': 3, 'around': 2,
"you're": 1, "don't": 1, 'under': 1, 'not': 1})
>>> b
Counter({'eyes': 1, 'looking': 1, 'are': 1, 'in': 1, 'not': 1, 'you': 1,
'my': 1, 'why': 1})
>>> # Combine counts
>>> c = a + b
>>> c
Counter({'eyes': 9, 'the': 5, 'look': 4, 'my': 4, 'into': 3, 'not': 2,
'around': 2, "you're": 1, "don't": 1, 'in': 1, 'why': 1,
'looking': 1, 'are': 1, 'under': 1, 'you': 1})
>>> # Subtract counts
>>> d = a - b
>>> d
Counter({'eyes': 7, 'the': 5, 'look': 4, 'into': 3, 'my': 2, 'around': 2,
"you're": 1, "don't": 1, 'under': 1})

以上就是python面试题之统计哈希列表中最多元素的详细内容,更多关于Python哈希列表最多元素统计的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python面试题之统计哈希列表中最多元素

本文链接: https://www.lsjlt.com/news/137103.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python面试题之统计哈希列表中最多元素
    问题 有一个元素序列,想知道在序列中出现次数最多的元素是什么 解决方案 collections 模块中的 Counter 类转让给女士为此问题所设计的。它甚至有一个非常方便的most...
    99+
    2024-04-02
  • python如何统计列表中元素出现的次数
    可以使用`collections.Counter`来统计列表中元素出现的次数。 from collections import Co...
    99+
    2023-10-25
    python
  • python如何求列表中出现次数最多的元素
    这篇文章主要介绍python如何求列表中出现次数最多的元素,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!列表中出现次数最多的元素>>> nums ...
    99+
    2024-04-02
  • python如何找出列表中出现最多次数的元素
    小编给大家分享一下python如何找出列表中出现最多次数的元素,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!找出列表中出现最多次数的元素list1 = [6, 1, 3, ...
    99+
    2023-06-27
  • 怎么在python中统计列表中元素出现的频率
    这期内容当中小编将会给大家带来有关怎么在python中统计列表中元素出现的频率,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB...
    99+
    2023-06-14
  • 使用python怎么统计list列表中各个元素出现的次数
    这篇文章将为大家详细讲解有关使用python怎么统计list列表中各个元素出现的次数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。利用字典dict来完成统计举例:a = ...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作