使用python统计文件行数示例分享

yipeiwu_com6年前Python基础

复制代码 代码如下:

import time

def block(file,size=65536):
    while True:
        nb = file.read(size)
        if not nb:
           break
        yield nb

def getLineCount(filename):
    with open(filename,"r",encoding="utf-8") as f:
        return sum(line.count("\n") for line in block(f))
if __name__ == "__main__":
    import sys
    import os
    if len(sys.argv) != 2:
        print("error imput argument")
        sys.exit(-1)
    if not os.path.isfile(sys.argv[1]) :
       print(sys.argv + " is not a file")
       sys.exit(-1)
    start_time = time.time()
    print(getLineCount(sys.argv[1]))
    print(time.time() - start_time ,"seconds")

相关文章

python小项目之五子棋游戏

python小项目之五子棋游戏

本文实例为大家分享了python五子棋游戏的具体代码,供大家参考,具体内容如下 1.项目简介 在刚刚学习完python套接字的时候做的一个五子棋小游戏,可以在局域网内双人对战,也可以和电...

浅谈python中拼接路径os.path.join斜杠的问题

调试程序的过程中,发现通过os.path.join拼接的路径出现了反斜杠 directory1='/opt/apps/upgradePackage' directory2='icp_...

解决Python计算矩阵乘向量,矩阵乘实数的一些小错误

解决Python计算矩阵乘向量,矩阵乘实数的一些小错误

计算:Ax-b A: 2*2 x: 2*1 b: 2*1 so, Ax-b: 2*1 if __name__ == "__main__": A = np.array([[...

Python迭代器和生成器介绍

Python迭代器和生成器介绍

迭代器 迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前进到下一结果,而在一系列结果的末尾是,则会引发StopIteration。 在for循...

Python中创建二维数组

Python中创建二维数组

二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称为方阵。对称矩阵a[i][j]...