Python实现计算文件夹下.h和.cpp文件的总行数

yipeiwu_com5年前Python基础

平时自己写了很多代码,但从没好好计算总共写了多少行,面试时被问起来,就傻了。。。闲来无事,写个python程序来统计下

import os

################################################################################
def calcLine(baseDir):
  lineCount = 0

  try:
    for fileName in os.listdir(baseDir):

      fullPath = baseDir + fileName
      if os.path.isdir(fullPath):
        lineCount += calcLine(fullPath + '\\') #递归读取所有文件
        
      if os.path.splitext(fullPath)[1] in (".h", ".cpp"):
        file = open(fullPath)
        for eachLine in file.readline():
          lineCount += 1
        file.close()
        
  except Exception as e:
    print(e)
  return lineCount

################################################################################
if __name__ == "__main__":
  baseDir = "K:\\C++\\MFC\\BubbleDragon\\"
  lineCount = calcLine(baseDir)
  print(lineCount)

相关文章

python检测文件夹变化,并拷贝有更新的文件到对应目录的方法

检测文件夹,拷贝有更新的文件到对应目录 2016.5.19 亲测可用,若有借鉴请修改下文件路径; 学习python小一个月后写的这个功能,属于初学,若有大神路过,求代码优化~ newco...

Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析

本文实例讲述了Python上下文管理器类和上下文管理器装饰器contextmanager用法。分享给大家供大家参考,具体如下: 一. 什么是上下文管理器 上下文管理器是在Python2....

多版本Python共存的配置方法

多版本Python共存的配置方法

同一台PC中,如果同时安装Python2和Python3环境,会在执行python命令时出现错误,操作系统会找到默认的配置进行执行。怎么样才能让python2和python3一起工作又互...

在CentOS6上安装Python2.7的解决方法

在CentOS6上yum安装工具是基于Python2.6.6的,所以在CentOS6上默认安装的是Python2.6.6,因为要在服务器系统为CentOS6上部署生产环境,但是代码都是基...

python使用post提交数据到远程url的方法

本文实例讲述了python使用post提交数据到远程url的方法。分享给大家供大家参考。具体如下: import sys, urllib2, urllib zipcode = "S2...