2013-03-10 45 views
0

我只想在程序運行期間檢查處理過的行數。 (我把約萬線txt文件。)如何查看在python程序中通過打印點處理了多少行?

運行時間期間檢查處理的行數,我用下面

lineCnt = 0 
for line in lines: 
    lineCnt += 1 
    if lineCnt % 2500 == 0: 
     sys.stdout.write('.') 
    if lineCnt % 100000 == 0: 
     print("") 

我預期上打印時,2500線是屏幕1點這段代碼對待。但是, 我只能看到同時打印40個點。當100000行處理。

我該如何解決它才能得到我想要的結果? T.T

+1

你爲什麼要叫'sys.stdout的.write「直接在第5行,然後在第7行使用」print「? – 2013-03-10 09:07:59

+0

如果使用打印新行字符自動添加到行尾。我只想在100000行處理時打印新行。 – 2013-03-10 09:18:05

+3

http://stackoverflow.com/q/107705/1258041 – 2013-03-10 09:52:37

回答

0

當點數很多時,是否要一次打印40個點?

lineCnt = 0 
for line in lines: 
    lineCnt += 1 
    if lineCnt > 100000: 
     if lineCnt % 100000 == 0: 
      print("." * 40) 
    elif lineCnt % 2500 == 0: 
     sys.stdout.write('.') 
2

嘗試sys.stdout.write('.')後加入sys.stdout.flush()

你可以在那裏使用打印。如果你不想點後,新的生產線做的,調用print這樣的:

在Python 3.X: print('.', end='')

在Python 2.X: print '.',

相關問題