我們現在有乙個檔案exp_data,想統計它的行數
現在有四種方法:
1、直接把檔案通過readlines()讀入為乙個大list,然後統計list的長度
2、每一行計數
3、直接借助os包呼叫shell函式
#! /usr/bin/python
#-*-coding:utf-8-*-
import time,os
answer=
with
open('exp_data','r') as f:
#方法1
t=time.time()
print len(f.readlines())
print time.time()-t
#方法2
f.seek(0)
t=time.time()
i=0forline
in f:
i+=1
print time.time()-t
#方法3
f.seek(0)
t=time.time()
os.popen('wc -l exp_data').read().split()[0]
print time.time()-t
輸出結果為:
645820
0.560460090637
0.301792860031
0.0874769687653
可以很明顯看到,檔案的行數為645820,按照效率從高到低排序為:方法三》方法二》方法一
也就是說,還是直接呼叫shell指令碼比自己在python裡計數要快很多
Linux統計檔案行數
語法 wc 選項 檔案 說明 該命令統計給定檔案中的位元組數 字數 行數。如果沒有給出檔名,則從標準輸入讀取。wc同時也給出所有指定檔案的 計數。字是由空格字元區分開的最大字串。該命令各選項含義如下 c 統計位元組數。l 統計行數。w 統計字數。這些選項可以組合使用。輸出列的順序和數目不受選項的順序...
Linux統計檔案行數
2011 07 17 17 32 by 依水間,21497 閱讀,0 語法 wc 選項 檔案 說明 該命令統計給定檔案中的位元組數 字數 行數。如果沒有給出檔名,則從標準輸入讀取。wc同時也給出所有指定檔案的 計數。字是由空格字元區分開的最大字串。該命令各選項含義如下 c 統計位元組數。l 統計行數...
Linux統計檔案行數
語法 wc 選項 檔案 說明 該命令統計給定檔案中的位元組數 字數 行數。如果沒有給出檔名,則從標準輸入讀取。wc同時也給出所有指定檔案的 計數。字是由空格字元區分開的最大字串。該命令各選項含義如下 c 統計位元組數。l 統計行數。w 統計字數。這些選項可以組合使用。輸出列的順序和數目不受選項的順序...