
Python統(tǒng)計(jì)列表中的重復(fù)項(xiàng)出現(xiàn)的次數(shù)的方法
本文以實(shí)例形式詳細(xì)講述了Python列表list數(shù)組array用法。分享給大家供大家參考。具體如下:
Python中的列表(list)類似于C#中的可變數(shù)組(ArrayList),用于順序存儲(chǔ)結(jié)構(gòu)。
創(chuàng)建列表
代碼如下:
sample_list = ['a',1,('a','b')]
Python 列表操作
代碼如下:
sample_list = ['a','b',0,1,3]
得到列表中的某一個(gè)值
代碼如下:
value_start = sample_list[0]
end_value = sample_list[-1]
刪除列表的第一個(gè)值
代碼如下:
del sample_list[0]
在列表中插入一個(gè)值
代碼如下:
sample_list[0:0] = ['sample value']
得到列表的長(zhǎng)度
代碼如下:
list_length = len(sample_list)
列表遍歷
代碼如下:
for element in sample_list:
print(element)
Python 列表高級(jí)操作/技巧
產(chǎn)生一個(gè)數(shù)值遞增列表
代碼如下:
num_inc_list = range(30)
#will return a list [0,1,2,...,29]
用某個(gè)固定值初始化列表
代碼如下:
initial_value = 0
list_length = 5
sample_list = [ initial_value for i in range(10)]
sample_list = [initial_value]*list_length
# sample_list ==[0,0,0,0,0]
附:python內(nèi)置類型'
1、list:列表 (即動(dòng)態(tài)數(shù)組,C++標(biāo)準(zhǔn)庫(kù)的vector,但可含不同類型的元素于一個(gè)list中)
代碼如下:
a = ["I","you","he","she"] #元素可為任何類型。
下標(biāo):按下標(biāo)讀寫,就當(dāng)作數(shù)組處理
以0開始,有負(fù)下標(biāo)的使用
0第一個(gè)元素,-1最后一個(gè)元素,
-len第一個(gè)元 素,len-1最后一個(gè)元素
取list的元素?cái)?shù)量
代碼如下:
len(list) #list的長(zhǎng)度。實(shí)際該方法是調(diào)用了此對(duì)象的__len__(self)方法。
創(chuàng)建連續(xù)的list
代碼如下:
L = range(1,5) #即 L=[1,2,3,4],不含最后一個(gè)元素
L = range(1, 10, 2) #即 L=[1, 3, 5, 7, 9]
list的方法
代碼如下:
L.append(var) #追加元素
L.insert(index,var)
L.pop(var) #返回最后一個(gè)元素,并從list中刪除之
L.remove(var) #刪除第一次出現(xiàn)的該元素
L.count(var) #該元素在列表中出現(xiàn)的個(gè)數(shù)
L.index(var) #該元素的位置,無(wú)則拋異常
L.extend(list) #追加list,即合并list到L上
L.sort() #排序
L.reverse() #倒序
list 操作符:,+,*,關(guān)鍵字del
代碼如下:
a[1:] #片段操作符,用于子list的提取
[1,2]+[3,4] #為[1,2,3,4]。同extend()
[2]*4 #為[2,2,2,2]
del L[1] #刪除指定下標(biāo)的元素
del L[1:3] #刪除指定下標(biāo)范圍的元素
list的復(fù)制
代碼如下:
L1 = L #L1為L(zhǎng)的別名,用C來說就是指針地址相同,對(duì)L1操作即對(duì)L操作。函數(shù)參數(shù)就是這樣傳遞的
L1 = L[:] #L1為L(zhǎng)的克隆,即另一個(gè)拷貝。
list comprehension
[ <expr1> for k in L if <expr2> ]
本文實(shí)例展示了Python統(tǒng)計(jì)列表中的重復(fù)項(xiàng)出現(xiàn)的次數(shù)的方法,是一個(gè)很實(shí)用的功能,適合Python初學(xué)者學(xué)習(xí)借鑒。具體方法如下:
對(duì)一個(gè)列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],現(xiàn)在我們需要統(tǒng)計(jì)這個(gè)列表里的重復(fù)項(xiàng),并且重復(fù)了幾次也要統(tǒng)計(jì)出來。
方法1:
mylist = [1,2,2,2,2,3,3,3,4,4,4,4]
myset = set(mylist) #myset是另外一個(gè)列表,里面的內(nèi)容是mylist里面的無(wú)重復(fù) 項(xiàng)
for item in myset:
print("the %d has found %d" %(item,mylist.count(item)))
方法2:
List=[1,2,2,2,2,3,3,3,4,4,4,4]
a = {}
for i in List:
if List.count(i)>1:
a[i] = List.count(i)
print (a)
利用字典的特性來實(shí)現(xiàn)。
方法3:
>>> from collections import Counter
>>> Counter([1,2,2,2,2,3,3,3,4,4,4,4])
Counter({1: 5, 2: 3, 3: 2})
這里再增補(bǔ)一個(gè)只用列表實(shí)現(xiàn)的方法:
l=[1,4,2,4,2,2,5,2,6,3,3,6,3,6,6,3,3,3,7,8,9,8,7,0,7,1,2,4,7,8,9]
count_times = []
for i in l :
count_times.append(l.count(i))
m = max(count_times)
n = l.index(m)
print (l[n])
其實(shí)現(xiàn)原理就是把列表中的每一個(gè)數(shù)出現(xiàn)的次數(shù)在其對(duì)應(yīng)的位置記錄下來,然后用max求出出現(xiàn)次數(shù)最多的位置。
只用這段代碼的話,有一個(gè)缺點(diǎn),如果有多個(gè)結(jié)果,最后的現(xiàn)實(shí)的結(jié)果只是出現(xiàn)在最左邊的那一個(gè),不過解決方法也很簡(jiǎn)單
數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼
若不方便掃碼,搜微信號(hào):CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無(wú)論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫(kù)管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫(kù)表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動(dòng)態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價(jià)值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲(chǔ)的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫(kù)表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫(kù))處理 Excel 數(shù)據(jù)時(shí),“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場(chǎng)景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲(chǔ)的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計(jì)劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計(jì)劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對(duì)象的 text 與 content:區(qū)別、場(chǎng)景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請(qǐng)求開發(fā)時(shí)(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價(jià)值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫(kù)表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請(qǐng)求工具對(duì)比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請(qǐng)求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長(zhǎng)浮點(diǎn)數(shù)據(jù)的科學(xué)計(jì)數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長(zhǎng)浮點(diǎn)數(shù)據(jù)時(shí)的科學(xué)計(jì)數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價(jià)值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營(yíng)問題、提升執(zhí)行效率的核心手段,其價(jià)值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計(jì)” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營(yíng)銷案例:數(shù)據(jù)驅(qū)動(dòng)下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營(yíng)銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價(jià)值 在數(shù)據(jù)驅(qū)動(dòng)決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價(jià)值挖掘 在數(shù)據(jù)分析場(chǎng)景中,聚類分析作為 “無(wú)監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計(jì)模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價(jià)值導(dǎo)向 統(tǒng)計(jì)模型作為數(shù)據(jù)分析的核心工具,并非簡(jiǎn)單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10