python实现代码行数统计示例分享


Posted in Python onFebruary 10, 2014
#!/usr/bin/python
'''
        File      : count.py
        Author    : Mike
        E-Mail    : Mike_Zhang@live.com
'''
import sys,os
extens = [".c",".cpp",".hpp",".h"]
linesCount = 0
filesCount = 0
def funCount(dirName):
    global extens,linesCount,filesCount
    for root,dirs,fileNames in os.walk(dirName):
        for f in fileNames:
            fname = os.path.join(root,f)
            try :
                ext = f[f.rindex('.'):]
                if(extens.count(ext) > 0):
                    print 'support'
                    filesCount += 1
                    print fname
                    l_count = len(open(fname).readlines())
                    print fname," : ",l_count
                    linesCount += l_count
                else:
                    print ext," : not support"
            except:
                print "Error occur!"
                pass

if len(sys.argv) > 1 :
    for m_dir in sys.argv[1:]:        
        print m_dir
        funCount(m_dir)
else :
    funCount(".")        
print "files count : ",filesCount
print "lines count : ",linesCount
raw_input("Press Enter to continue")

使用方法
1、针对本目录

./count.py

2、统计多个目录

./count.py /tmp ~
Python 相关文章推荐
Python模块学习 filecmp 文件比较
Aug 27 Python
python通过加号运算符操作列表的方法
Jul 28 Python
浅谈python 线程池threadpool之实现
Nov 17 Python
Django数据库表反向生成实例解析
Feb 06 Python
Php多进程实现代码
May 07 Python
python3个性签名设计实现代码
Jun 19 Python
python求最大连续子数组的和
Jul 07 Python
python调试神器PySnooper的使用
Jul 03 Python
pygame实现打字游戏
Feb 19 Python
python制作抽奖程序代码详解
Jan 15 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
python数据可视化JupyterLab实用扩展程序Mito
Nov 20 Python
python基础教程之获取本机ip数据包示例
Feb 10 #Python
python基础教程之udp端口扫描
Feb 10 #Python
python网页请求urllib2模块简单封装代码
Feb 07 #Python
python解析xml模块封装代码
Feb 07 #Python
python 解析XML python模块xml.dom解析xml实例代码
Feb 07 #Python
python合并文本文件示例
Feb 07 #Python
python实现哈希表
Feb 07 #Python
You might like
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
ExtJS 2.2.1的grid控件在ie6中的显示问题
2009/05/04 Javascript
javascript事件问题
2009/09/05 Javascript
javascript 面向对象编程 function也是类
2009/09/17 Javascript
深入document.write()与HTML4.01的非成对标签的详解
2013/05/08 Javascript
JavaScript实现点击按钮后变灰避免多次重复提交
2013/07/15 Javascript
页面右下角弹出提示框示例代码js版
2013/08/02 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
js支持键盘控制的左右切换立体式图片轮播效果代码分享
2015/08/26 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
2016/01/07 Javascript
jQuery获取cookie值及删除cookie用法实例
2016/04/15 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
2016/06/10 Javascript
Node.js中process模块常用的属性和方法
2016/12/13 Javascript
基于vue-simplemde实现图片拖拽、粘贴功能
2018/04/12 Javascript
Angular如何在应用初始化时运行代码详解
2018/06/11 Javascript
微信小程序实现滴滴导航tab切换效果
2018/07/24 Javascript
angular 数据绑定之[]和{{}}的区别
2018/09/25 Javascript
深入理解 Koa 框架中间件原理
2018/10/18 Javascript
js实现无缝滚动双图切换效果
2019/07/09 Javascript
原生js基于canvas实现一个简单的前端截图工具代码实例
2019/09/10 Javascript
[59:53]DOTA2-DPC中国联赛 正赛 VG vs Elephant BO3 第二场 3月6日
2021/03/11 DOTA
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
神经网络理论基础及Python实现详解
2017/12/15 Python
使用html2canvas将页面转成图并使用用canvas2image下载
2019/04/04 HTML / CSS
澳大利亚领先的折扣药房:Chemist Direct(有中文站)
2018/11/24 全球购物
出纳的岗位职责
2013/11/09 职场文书
房产委托公证书
2014/04/08 职场文书
秋冬农业生产标语
2014/10/09 职场文书
2014年技术部工作总结
2014/12/12 职场文书
欢迎词怎么写
2015/01/23 职场文书
2016父亲节感恩话语
2015/12/09 职场文书
2016入党积极分子党课培训心得体会
2016/01/06 职场文书
python编写五子棋游戏
2021/05/25 Python
Java中使用Filter过滤器的方法
2021/06/28 Java/Android
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL