国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python實現統計代碼行數的方法

2020-02-23 01:21:24
字體:
來源:轉載
供稿:網友

本文實例講述了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程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 隆回县| 澎湖县| 永吉县| 昌宁县| 广平县| 新晃| 三门峡市| 娱乐| 黑山县| 祥云县| 河津市| 始兴县| 太仆寺旗| 喀什市| 武川县| 东安县| 石狮市| 霍山县| 黄石市| 平乡县| 上林县| 长子县| 临江市| 宜宾县| 通山县| 开江县| 那坡县| 玉林市| 沙坪坝区| 诸城市| 启东市| 普格县| 黔南| 深泽县| 丰城市| 高要市| 合川市| 武邑县| 故城县| 叙永县| 左云县|