Python计算一个项目中含有的代码行数
最近想要知道以前做过的project有多少行代码,因为文件太多,直接手工数效率太低,于是编写一个python程序用来计算一个project有多少代码行。
首先,在一个项目中,有很多子文件夹,子文件夹中又包含子文件夹,然后子子文件夹下面有很多java源代码。我们首先获取src文件下的子文件夹,然后一直递归获得子文件夹中的文件和文件夹。若得到的是文件,则读取文件,获得该文件的代码行数。
此代码测试的是java项目的源代码,所以程序只要获取java项目的src文件的路径即可,程序输出的是此src文件夹下所有源文件的代码行总和。
具体代码如下:
#encoding:utf-8 import os mainpath = 'D:\ProjectFiles\SIMServer\src' #mainpath = 'D:\ProjectFiles\SIMClient\src' def getlines(path): files = os.listdir(path) theline = 0 for file in files: #print(file) newpath = path+"\\"+file print(newpath) if os.path.isdir(newpath): theline += getlines(newpath) if os.path.isfile(newpath): data = open(newpath) num = len(data.readlines()); theline += num return theline if __name__ == '__main__': lines = getlines(mainpath) print(lines)