Python?編程操作連載之字符串,列表,字典和集合處理
1.如何統(tǒng)計(jì)序列中元素出現(xiàn)的頻率并排序?
統(tǒng)計(jì)序列中元素出現(xiàn)的頻率的結(jié)果肯定是一個(gè)字典,Key 為序列中的元素而 Value 為元素出現(xiàn)的次數(shù),因此可以先創(chuàng)建一個(gè)字典,作為初始的統(tǒng)計(jì)結(jié)果,并假設(shè)初始出現(xiàn)的次數(shù)都為0。
對(duì)頻率結(jié)果字典的 Value 進(jìn)行排序
from random import randint
# 生成包含重復(fù)元素的隨機(jī)序列
nums = [randint(0, 10) for num in range(20)]
# 元素出現(xiàn)次數(shù)的統(tǒng)計(jì)最終肯定是一個(gè)字典,因此可以以元素的Key,出現(xiàn)的次數(shù)為Value
count = dict.fromkeys(nums, 0)
# 統(tǒng)計(jì)頻次
for num in nums:
count[num] += 1
# 排序方案一
# 根據(jù)Value進(jìn)行排序
_count = sorted(count.values())
# 獲取最大的次數(shù)
max = _count.pop()
keys = []
# 根據(jù)Value獲取Key
for k, v in count.items():
if v == max:
keys.append(k)
if __name__ == '__main__':
print(nums)
print(count)
print(_count)
print(max)
print(keys)
出現(xiàn)的最大頻次為4,且頻次為4的元素是9和1
使用 Counter 對(duì)象進(jìn)行排序
# 排序方案二
from collections import Counter
_count = Counter(count)
# 中間代碼不變
if __name__ == '__main__':
print(nums)
print(count)
print(_count)
print(_count.most_common())
# 獲取出現(xiàn)頻次最高的三個(gè)元素
print(_count.most_common(3))
2.統(tǒng)計(jì)單詞次數(shù)
import re
from collections import Counter
zen = open('zen.txt').read()
# 分割所有單詞
zen = re.split('\W+', zen)
# print(zen)
_zen = Counter(zen)
print(_zen)
_zen_3 = _zen.most_common(3)
print('前三個(gè)出現(xiàn)頻次最高的詞:', _zen_3)
到此這篇關(guān)于Python 編程操作連載之字符串,列表,字典和集合處理的文章就介紹到這了,更多相關(guān)Python 字符串處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
用Python寫(xiě)一個(gè)簡(jiǎn)易版彈球游戲
這篇文章主要介紹了用Python寫(xiě)一個(gè)簡(jiǎn)易版彈球游戲,文中有很多實(shí)用代碼,對(duì)正在學(xué)習(xí)python的小伙伴們有很大的幫助.需要的朋友可以參考下2021-04-04
Python實(shí)現(xiàn)信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06
利用Python腳本實(shí)現(xiàn)ping百度和google的方法
最近在做SEO的時(shí)候,為了讓發(fā)的外鏈能夠快速的收錄,想到了利用ping的功能,google和百度都有相關(guān)的ping介紹,有興趣的朋友可以去看看相關(guān)的知識(shí)。下面這篇文章主要介紹了利用Python腳本實(shí)現(xiàn)ping百度和google的方法,需要的朋友可以參考借鑒,一起來(lái)看看吧。2017-01-01
分享11個(gè)Python自動(dòng)化操作Excel的方法
這篇文章主要給大家分享的是11個(gè)Python自動(dòng)化操作Excel的方法,自動(dòng)化辦公,我相信很多人都有強(qiáng)烈的需求,今天我教大家如何利用Python自動(dòng)化操作Excel,需要的朋友可以參考一下2022-02-02
Python flask框架實(shí)現(xiàn)瀏覽器點(diǎn)擊自定義跳轉(zhuǎn)頁(yè)面
這篇文章主要介紹了Python flask框架實(shí)現(xiàn)瀏覽器點(diǎn)擊自定義跳轉(zhuǎn)頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
python雙向鏈表實(shí)現(xiàn)實(shí)例代碼
python雙向鏈表和單鏈表類似,只不過(guò)是增加了一個(gè)指向前面一個(gè)元素的指針,下面的代碼實(shí)例了python雙向鏈表的方法2013-11-11
PyQt4實(shí)時(shí)顯示文本內(nèi)容GUI的示例
今天小編就為大家分享一篇PyQt4實(shí)時(shí)顯示文本內(nèi)容GUI的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
python-opencv 中值濾波{cv2.medianBlur(src, ksize)}的用法
這篇文章主要介紹了python-opencv 中值濾波{cv2.medianBlur(src, ksize)}的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2021-06-06

