时间:2021-05-22
本文实例讲述了python实现统计代码行数的方法。分享给大家供大家参考。具体实现方法如下:
'''Author: liupengfeiFunction: count lines of code in a folder iterativelyShell-format: cmd [dir]Attention: default file encode is utf8 and default file type is java-source-file. But users can customize this script by just modifing global variables.'''import sysimport osimport codecsfrom _pyio import opentotalCount = 0;fileType = '.java'descLineBegin = '//'descBlockBegin = r'/**'descBlockEnd = r'*/'fileEncode = 'utf-8'def main(): DIR = os.getcwd() if len(sys.argv) >= 2: DIR = sys.argv[1] if os.path.exists(DIR) and os.path.isdir(DIR): print('target directory is %s' % DIR) countDir(DIR) print('total code line is %d' % totalCount) else: print('target should be a directory!')def isFileType(file): return len(fileType) + file.find(fileType) == len(file)def countDir(DIR): for file in os.listdir(DIR): absPath = DIR + os.path.sep + file; if os.path.exists(absPath): if os.path.isdir(absPath): countDir(absPath) elif isFileType(absPath): try: countFile(absPath) except UnicodeDecodeError: print( '''encode of %s is different, whichis not supported in this version!''' )def countFile(file): global totalCount localCount = 0 isInBlockNow = False f = codecs.open(file, 'r', fileEncode); for line in f: if (not isInBlockNow) and line.find(descLineBegin) == 0: pass; elif (not isInBlockNow) and line.find(descBlockBegin) >= 0: if line.find(descBlockBegin) > 0: localCount += 1 isInBlockNow = True; elif isInBlockNow and line.find(descBlockEnd) >= 0: if line.find(descBlockEnd) + len(descBlockEnd) < len(line): localCount += 1 isInBlockNow = False; elif (not isInBlockNow) and len(line.replace('\\s+', '')) > 0: localCount += 1 f.close() totalCount += localCount print('%s : %d' % (file, localCount))if __name__ == '__main__': main();希望本文所述对大家的Python程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
python统计代码行数简单实例送测的时候,发现需要统计代码行数于是写了个小程序统计自己的代码的行数。#calclate_code_lines.pyimport
本文实例讲述了Python实现统计python文件中代码,注释及空白对应的行数。分享给大家供大家参考,具体如下:其实代码和空白行很好统计,难点是注释行pytho
本文实例为大家分享了python实现代码统计程序的具体代码,供大家参考,具体内容如下#encoding="utf-8""""统计代码行数"""importsys
一个用python实现的统计代码行数的小工具,供大家参考,具体内容如下实现功能计算出某一目录以及子目录下代码文件的行数在计算代码的过程中,只对标准命名的文件进行
本文实例为大家分享了PHP实现统计代码行数小工具,供大家参考,具体内容如下为了方面统计编程代码行数,做了一个小工具。自动统计指定目录以及目录下的所有文件。0;$