Python找出序列中出現最多的元素
運用場景
有時候我們需要統計一個序列中出現最多或者次多的元素,或者是給你一段文字,這段文字中出現最多的詞是什麼,以及每個詞出現的次數,這個在寫程式碼的初級篇大家都會遇到。
一般的做法,我肯定會用一個字典做遍歷,key 就是我們要處理的元素,然後value就是我們的統計結果。
但是這種一看就是輪子,所以我們就愉快的直接用吧。
Python專門設計了一個類來處理這個問題
下面就是這個類的具體的用法,假設我們有一個單詞列表,我們想要找出那個單詞出現的頻率最高。
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)
# 出現頻率最高的3個單詞
top_three = word_counts.most_common(3 )
print(top_three)
# Outputs [('eyes', 8), ('the', 5), ('look', 4)]
Reference
相關推薦
Python找出序列中出現最多的元素
運用場景 有時候我們需要統計一個序列中出現最多或者次多的元素,或者是給你一段文字,這段文字中出現最多的詞是什麼,以及每個詞出現的次數,這個在寫程式碼的初級篇大家都會遇到。 一般的做法,我肯定會用一個字典做遍歷,key 就是我們要處理的元素,然後value就是
python找出序列中出現次數最多的元素之Counter物件
解決此類問題我們將用到collections模組中的Counter類,並直接呼叫Counter類的most_common()方法或得答案。 用下面的例子來講解具體用法: 基本用法 from col
JS實現找出字串中出現最多的字元和次數
var str = "zhaochucichuzuiduodezifu"; var o = {}; //遍歷str,統計每個字元出現的次數 for (var i = 0, len
python找出字典中value最大值的幾種方法
假設定義一字典,m = {"a":3,"e":6,"b":2,"g":7,"f":7,"c":1,"d":5},在不知道key的情況下如何找出字典中value最大的所有key-value對?下面討論幾種方法。 1)通過m.values()和max()函式 第一步,通過max()函式找到字典中的value最
演算法練習08 找出字串中出現次數最多的字元
題目 找出一個字串中出現次數最多的字元 const str = 'asdfaaaa' 最後的返回值是字串'a' 實現 嗯,我略加思考(半個小時左右),給出了一個複雜的方案,一個屎一般的方案 屎一般的方案 我的方案是利用redcue,計算出了每個字串出現的頻次
問題6: 找出字串中出現次數最多的字母及其出現的次數
這好像是華為機試的一道題目,我採用JAVA來完成,用JAVA也可以用其他方法。 我用一個比較簡單的方法,程式碼如下: public class Str{ public static void main(String[] args){ String str =
找出陣列中出現次數最多的數字
#include <stdio.h> #include <stdlib.h> /* run this program using the console pauser or add your own getch, system("pause") or
找出陣列中出現次數最多的那個數——主元素問題
方法一:以空間換時間,可以定義一個計數陣列int count[100],用來對陣列中數字出現的次數進行計數(只能針對陣列中數字的範圍1~1000),count陣列中最大的元素對應的下標,即為出現次數最多的那個數。程式碼如下: #include <iostream&g
Python 中找出字串中出現頻率最高的字母
發現一個學Python的好網站 https://py.checkio.org 第一題大概意思就是找出一個字串中出現頻率最高字母 我的思路也是直接,弄個字典,遍歷字串,將鍵值對填進字典裡,健就是字母,值就是出現了幾次,再查下字典裡最大的值即可。 上我的程式碼 import
Python面試題 —— 計算列表中出現最多次的字元
題目: 給你一個其中包含不同的英文字母和標點符號的文字,你要找到其中出現最多的字母,返回的字母必須是小寫形式, 當檢查最想要的字母時,不區分大小寫,所以在你的搜尋中 “A” == “a”。 請確保你不計算標點符號,數字和空格,只計算字母。 如果你找到 兩個或兩個以上的具有相同的頻率的字母,
python-進階教程-找出字典中值最大(最小)元素的n種方法
0.摘要 字典作為儲存“鍵值對”的資料結構,往往不能直接進行計算,需要藉助額外的方法。 本文主要介紹多種方法,實現根據字典的值進行最大值、最小值和排序等計算。 1.使用dict.values()方法 dict.values()方法可以直接提取出字典的值,並存放在單獨
python 找出list中最大或者最小几個數的索引
nums = [1,8,2,23,7,-4,18,23,24,37,2] result = map(nums.index, heapq.nlargest(3, nums)) temp=[] Inf =
python--計算字串中出現最多次數的字元
看了網上挺多寫的方法都沒達到我所需要的效果,我乾脆自己寫了個方法共享給大家ee = 'aa111(((bbhhhhhh%jjjjjj%(ccc((vvvv22' cc='11222333' def max_letter_count(n): list4 = []
資料結構——陣列(3) 在有序陣列中找出重複的次數最多的數
先總結有序陣列,無序的後面再總結。。 1.以空間換時間法。 演算法思想:目標陣列array[length],是一個有序陣列,比如int array[]={1,1,2,2,4,4,4,4,4,5,5,6,10};總共有13個元素,其中數字最多的數是4,總計5次
數組中出現最多的數,以及接口 Map.Entry<K,V>
int try tools pub length rem value contains span 1 package test.tools; 2 3 import java.util.Collection; 4 import java.util.Collecti
獲取在一個數組中出現最多的字符及其所在的位置
blog 數組 body asc i++ cnblogs attr 次數 獲取 獲取在一個數組中出現最多的字符、個數及其所在的位置 <!DOCTYPE html> <html> <head> <title>一個數組中,出現
有1千萬條有重復的短信,以文本文件的形式保存,一行一條,也有重復,用5分鐘時間找出重復出現最多的前10條短信。
ascii碼 宋體 哈希表 文本 深度 pan 進行 span 二次 1,哈希表法 分成若幹組,進行掃描。相同記錄只加1次,重復次數加1,之後進行第二次掃描,得出重復次數的前十名。 2,從小到大排序(我覺得最好不用這種方法,準確性不高) 3,內存映射(建議) 對每條
[leetcode]508. Most Frequent Subtree Sum二叉樹中出現最多的值
def class keyset fault 二叉 post 節點 helper list 遍歷二叉樹,用map記錄sum出現的次數,每一個新的節點都統計一次。 遍歷完就統計map中出現最多的sum Map<Integer,Integer> map = new
劍指offer之找出陣列中出現次數超過一半的數字
找出陣列中出現次數超過一半的數字 歡迎關注作者簡書 csdn傳送門 題目 一個數組中有一個數字的次數超過了陣列的一半,求出這個字元。如:int a[] = {2,3,2,2,2,2,2,5,4,1,2,3},求出超過一半的數字是2 分析 解法一
Linux:找出cpu資源佔用最多的那個執行緒
在這裡對linux下、sun(oracle) JDK的執行緒資源佔用問題的查詢步驟做一個小結;linux環境下,當發現java程序佔用CPU資源很高,且又要想更進一步查出哪一個java執行緒佔用了CPU資源時,按照以下步驟進行查詢: 先用top命令找出佔用資源厲害的java