1. 程式人生 > >python---統計特定時間釋出數量(列表、range、for、元組、字典)

python---統計特定時間釋出數量(列表、range、for、元組、字典)

python—統計特定時間釋出數量(列表、range、for、元組、字典)

題意:對列表中(‘2012-11-3,22’, 12)……..24個時間區段,即每個小時釋出的數量統計,例子中22為22點,12為釋出次數。有可能是不同日期的22點發布次數,就要對所有日期的22點進行統計次數。

方法1:使用for n in range(0,len(test))語句

Python原始碼:

root@kali:~/python/laowangpy/datadig# cat sometime.py 
# -*-coding:utf-8 -*-

test = [('2012-11-3,22', 12), ('2012-11-4,5'
, 8), ('2012-11-4,0', 7), ('2012-11-4,2', 7), ('2012-11-4,6', 7), ('2012-11-2,16', 5), ('2012-11-3,12', 5), ('2012-11-3,13', 5), ('2012-11-4,4', 5), ('2012-11-2,13', 4), ('2012-11-2,7', 4), ('2012-11-3,11', 4), ('2012-11-3,15', 4), ('2012-11-3,19', 4), ('2012-11-4,10', 4), ('2013-11-3,22', 4), ('2012-10-30,6', 3), ('2012-11-2,0'
, 3), ('2012-11-3,16', 3), ('2012-11-3,20', 3), ('2012-11-3,23', 3), ('2012-11-4,8', 3), ('2012-11-2,12', 2), ('2012-11-3,14', 2), ('2012-11-3,2', 2), ('2012-11-3,21', 2), ('2012-11-3,3', 2), ('2012-11-4,3', 2), ('2012-11-4,7', 2), ('2012-11-4,9', 2), ('2013-11-3,19', 2), ('2013-11-4,5', 2), ('2012-10-30,9', 1), ('2012-11-1,17'
, 1), ('2012-11-1,5', 1), ('2012-11-2,11', 1), ('2012-11-3,0', 1), ('2012-11-3,1', 1), ('2012-11-3,18', 1), ('2012-11-3,5', 1), ('2012-11-4,1', 1), ('2013-10-29,10', 1), ('2013-10-4,5', 1), ('2013-11-2,16', 1), ('2013-11-3,10', 1), ('2013-11-3,13', 1), ('2013-11-3,20', 1), ('2013-11-3,21', 1), ('2013-11-4,0', 1), ('2013-11-4,1', 1), ('2013-11-4,10', 1), ('2013-11-4,3', 1), ('2013-11-4,4', 1), ('2013-11-4,7', 1), ('2013-12-4,0', 1), ('2014-11-3,11', 1), ('2014-11-3,15', 1), ('2014-11-3,22', 1), ('2014-11-4,4', 1), ('2014-12-1,2', 1), ('2014-12-3,13', 1)] i = 0 tupe = [0]*24#新建列表中24個元素 for i in range(0,len(test)):#i遍歷列表test的長度,從0開始 tupe[int(test[i][0].split(',')[1])] = tupe[int(test[i][0].split(',')[1])] + test[i][1] #test[i][1]取列表[i]中的第二個元素的值 #tupe[int(test[i][0].split(',')[1])]對列表[i]中第一個元素,使用,分割,並且把分割成的第二個元素取出來,加入列表tupe中 #tupe[int(test[i][0].split(',')[1])]為tupe[x]的值 #int(test[i][0].split(',')[1])為tupe[x]的x值 print tupe time = 0#次數初始化 for n in range(0,len(tupe)):#n遍歷列表tupe長度,從0開始 print "the clock's %d have %s times" %(time,tupe[n])#24個小時內每個小時釋出次數 time = time + 1#每次自增1 root@kali:~/python/laowangpy/datadig#

python執行情況:

[email protected]:~/python/laowangpy/datadig# python sometime.py 
[13, 3, 10, 5, 7, 13, 10, 7, 3, 3, 7, 6, 7, 11, 2, 5, 9, 1, 1, 6, 4, 3, 17, 3]
the clock's 0 have 13 times
the clock's 1 have 3 times
the clock's 2 have 10 times
the clock's 3 have 5 times
the clock's 4 have 7 times
the clock's 5 have 13 times
the clock's 6 have 10 times
the clock's 7 have 7 times
the clock's 8 have 3 times
the clock's 9 have 3 times
the clock's 10 have 7 times
the clock's 11 have 6 times
the clock's 12 have 7 times
the clock's 13 have 11 times
the clock's 14 have 2 times
the clock's 15 have 5 times
the clock's 16 have 9 times
the clock's 17 have 1 times
the clock's 18 have 1 times
the clock's 19 have 6 times
the clock's 20 have 4 times
the clock's 21 have 3 times
the clock's 22 have 17 times
the clock's 23 have 3 times
[email protected]:~/python/laowangpy/datadig# vi sometime.py

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

方法2:使用字典

python原始碼:

root@kali:~/python/laowangpy/datadig# cat sometime.py 
# -*-coding:utf-8 -*-

test = [('2012-11-3,22', 12), ('2012-11-4,5', 8), ('2012-11-4,0', 7), ('2012-11-4,2', 7), ('2012-11-4,6', 7), ('2012-11-2,16', 5), ('2012-11-3,12', 5), ('2012-11-3,13', 5), ('2012-11-4,4', 5), ('2012-11-2,13', 4), ('2012-11-2,7', 4), ('2012-11-3,11', 4), ('2012-11-3,15', 4), ('2012-11-3,19', 4), ('2012-11-4,10', 4), ('2013-11-3,22', 4), ('2012-10-30,6', 3), ('2012-11-2,0', 3), ('2012-11-3,16', 3), ('2012-11-3,20', 3), ('2012-11-3,23', 3), ('2012-11-4,8', 3), ('2012-11-2,12', 2), ('2012-11-3,14', 2), ('2012-11-3,2', 2), ('2012-11-3,21', 2), ('2012-11-3,3', 2), ('2012-11-4,3', 2), ('2012-11-4,7', 2), ('2012-11-4,9', 2), ('2013-11-3,19', 2), ('2013-11-4,5', 2), ('2012-10-30,9', 1), ('2012-11-1,17', 1), ('2012-11-1,5', 1), ('2012-11-2,11', 1), ('2012-11-3,0', 1), ('2012-11-3,1', 1), ('2012-11-3,18', 1), ('2012-11-3,5', 1), ('2012-11-4,1', 1), ('2013-10-29,10', 1), ('2013-10-4,5', 1), ('2013-11-2,16', 1), ('2013-11-3,10', 1), ('2013-11-3,13', 1), ('2013-11-3,20', 1), ('2013-11-3,21', 1), ('2013-11-4,0', 1), ('2013-11-4,1', 1), ('2013-11-4,10', 1), ('2013-11-4,3', 1), ('2013-11-4,4', 1), ('2013-11-4,7', 1), ('2013-12-4,0', 1), ('2014-11-3,11', 1), ('2014-11-3,15', 1), ('2014-11-3,22', 1), ('2014-11-4,4', 1), ('2014-12-1,2', 1), ('2014-12-3,13', 1)]

n = 0
timeclock = [0]*24#定義24個時間段
#print timeclock
counttimes = {}#初始24個時間對應次數的字典

for n in range(0,len(test)):
        timeclock[int(test[n][0].split(',')[1])] = timeclock[int(test[n][0].split(',')[1])] + test[n][1]
        #timeclock[int(test[n][0].split(',')[1])]為timeclock[x]的值
        counttimes[int(test[n][0].split(',')[1])] = timeclock[int(test[n][0].split(',')[1])]#在空字典中新增字典元素key=value
        #int(test[n][0].split(',')[1])為timeclock[x]的x
print timeclock#為24個時間段
print counttimes#列印24個時間段對應的次數資訊


root@kali:~/python/laowangpy/datadig# 

python執行情況:

root@kali:~/python/laowangpy/datadig# python 720121103fre.py 
[13, 3, 10, 5, 7, 13, 10, 7, 3, 3, 7, 6, 7, 11, 2, 5, 9, 1, 1, 6, 4, 3, 17, 3]
{0: 13, 1: 3, 2: 10, 3: 5, 4: 7, 5: 13, 6: 10, 7: 7, 8: 3, 9: 3, 10: 7, 11: 6, 12: 7, 13: 11, 14: 2, 15: 5, 16: 9, 17: 1, 18: 1, 19: 6, 20: 4, 21: 3, 22: 17, 23: 3}
root@kali:~/python/laowangpy/datadig# 

相關推薦

python---統計特定時間釋出數量列表rangefor字典

python—統計特定時間釋出數量(列表、range、for、元組、字典) 題意:對列表中(‘2012-11-3,22’, 12)……..24個時間區段,即每個小時釋出的數量統計,例子中22為22點,12為釋出次數。有可能是不同日期的22點發布次數,就要對所有

python開發第三篇python基本數據類型列表字典

python開發 .com mage es2017 列表 基本 images 數據類型 切片 ##########列表:list########## 1.索引: 結果:eirc 2.切片 python開發(第三篇):python基本數據類型(列表,元組,字典)

多值引數字典的拆包

什麼是多值引數的拆包? num_tuple = (1,2,3,4,5) info_dict = {"name": "老王"} #任意定義一個多值函式 def test(*args, **kwargs): print(args) print(kwargs) #1.錯

python基礎5---整型字符串列表字典內置方法和文件操作介紹

進制 res cde __init__ little 計算 技術分享 圖片 pos   對於python而言,一切事物都是對象,對象是基於類創建的,對象繼承了類的屬性,方法等特性     1.int   首先,我們來查看下int包含了哪些函數 # python3.x di

python學習--day1列表字典的區別

鍵值對 方法 nbsp 可變 set 有序 day python學習 元組 1、列表、元組、字典的區別? ①列表是中括號[]、元組是圓括號()、字典是花括號{} ②列表是有序的、元組是有序的、字典是無序的 ③列表存儲的是值、元組也是值、字典是鍵值對(key\value) ④

python 高級數據類型列表 字典 字符串

nta 代碼 upper 獨立 復數 能夠 增加 capital 存儲 高級變量類型 目標 列表 元組 字典 字符串 公共方法 變量高級 知識點回顧 Python 中數據類型可以分為 數字型 和 非數字型 數字型 整型 (int) 浮點型(float) 布爾型(bo

少說話多寫程式碼之Python學習033——迴圈語句03列表導式

列表導式是利用列表建立新的列表,比如,下面建立一個列表 a=[x*x for x in range(10)] print(a) 輸出 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 建立列表過程中也可以增加條件,比如,只要能被2整除的數。 b=[x*

python學習第五天:python基礎字串有序集合列表;正確理解不可變

首先,什麼是sequence(序列)操作? 字串的特性被稱為sequence(序列)  H o w a r e y o u ? 就好像儲存在一個個連續的單元格里面,每個單

python學習小總結列表字典集合字符串

添加列 xtend 16px 指定 替換 需要 isa utf-8 head ---恢復內容開始--- 一、列表(list) 1.添加 append():追加,在列表末尾添加元素。 列表名.append(添加的元素) extend():擴展,在列表末尾添加元素。 列表名.e

Python基礎學習!容器,列表字典與集合!1

本文是容器 列表知識的筆記! 元組&列表 元組:是不可變的,值被固定元組中就不可以再進行改變! 列表:是可變的,意味著可以隨意插入或者刪除其中的元素 函式呼叫格式: 列表名.函式名(引數)#元素的話要帶著單引號!大多是這樣! ‘,’.join(a)這個連線函式,用法

Python基礎模塊初識字符串列表字典的用法

tde sort 開始 添加 isalnum 衢州 pca ascii碼表 單個 模塊(Module)初識 python模塊是一個python文件,以.py結尾。模塊中定義了一些變量及函數,可以在需要的時候引用模塊,調用其中的變量及函數。可以調用系統模塊或導入第三方模塊調用

Python-字串-列表--集合-字典-常用方法 And 時間-數學-隨機-模組兒 And 內建函式 And 異常型別

目錄 一、常用方法 1.字串常用方法 2.列表常用方法 3.元組常用方法 4.集合常用方法 5.字典常用方法 二、常用模組 1.時間模組 2.數學模組 3.隨機模組 4.系統模組 三、內建函式

Python入門筆記—第四章列表List

第四章:列表(List) - 定義:一組有順序的集合(重點:有順序) 1 建立列表的方法(4種) #建立空列表 l1 = [] print(type(l1)) print(l1) #建立單值列表 l2 = [1001] print(type(l2)) print(l2

Python基本資料型別數字字串列表集合字典

Python基本資料型別: 數字 字串(‘ ‘ 或 “ “括起來;不可修改;可切片或下標檢索) 列表[ ]  (可修改;可切片或下標檢索) 元組( )  (不可修改;可切片或下標檢索) 集合{ }  (無法修改,只能增刪) 字典{ }  (只能改值,不能改鍵;用鍵

python 可迭代序列列表,字串,實現鄰近去重,順序不變

碼字不易,轉載請標明出處… 鄰近去重程式碼實現如下: def special_func_order(seq): list_ = [] # 定義一個空列表,用來儲存判斷後的資料 for i in range(len(seq) - 1): # 假如 le

python基礎資料型別:list列表__004

1、在學習列表之前,重新複習一下編碼的規則 回顧編碼解析: (1)ASCII碼: 由字母、數字以及特殊字元構成的; 每一個字元為一個位元組,1位元組byte=8位bit (2)unicode:又稱萬國碼,由字母、數字、特殊字元和中文構成,每個字元都是32位:4個位元組,包括1一個

Python學習之路——標準資料型別續——列表字典,集合

0.Python之禪 可以通過在python直譯器中輸入import this 檢視python應該注意的一些規範與原則,如下: 1.列表 元素用方括號括起,元素之間用逗號隔開,如[1,2,3,4] 三大特點: (1)異構性 列表裡想裝啥就裝啥,即:他可以包含不同種類、

統計特定狀態碼的IP列表並計算其訪問次數

web訪問日誌access.log的格式如下,請編寫shell指令碼統計8.14當天訪問web伺服器返回非200狀態碼IP列表並計算其訪問次數,由高到低排序。 0.001 215.26.54.129 -- [14/Aug/2016:02:56:50 +0800]

Python教程補充內容函式中接收列表和lambda的用法——簡明python教程學習筆記

本文大量內容來源於沈老師的簡明python教程,其中夾雜部分個人的理解如有偏頗之處還望海涵。 一. 在函式中接收元組和列表 \quad當要使函式接收元組或字典形式的引數的時候,有一種特殊的方法,它分別使用*和**字首。 這種方法在函式需要獲取可變數量的引數的

Python入門筆記2 序列字串列表

操作字串的方法: a.索引取值   a='abcde'   a[0]、a[1]取a中元素,但一次只可以取一個。   用+號連線,如,a[1]+a[2]。得‘ab’ b.切片 可以從字串中進行擷取 分正負數,正數表示從左往右取,從0開始;負數代表從右往左取,最後一位為-1