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求pi的方法
Oct 08 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
pandas通过loc生成新的列方法
Nov 28 Python
Python设计模式之工厂方法模式实例详解
Jan 18 Python
Pandas库之DataFrame使用的学习笔记
Jun 21 Python
python实现知乎高颜值图片爬取
Aug 12 Python
用Python去除图像的黑色或白色背景实例
Dec 12 Python
Python调用shell命令常用方法(4种)
May 11 Python
python 5个顶级异步框架推荐
Sep 09 Python
如何用python反转图片,视频
Apr 24 Python
pytorch中的model=model.to(device)使用说明
May 24 Python
Python编程super应用场景及示例解析
Oct 05 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脚本数据库功能详解(上)
2006/10/09 PHP
PHP防范SQL注入的具体方法详解(测试通过)
2014/05/09 PHP
取得单条网站评论以数组形式进行输出
2014/07/28 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
2015/10/09 PHP
php数组冒泡排序算法实例
2016/05/06 PHP
PHP实现的网站目录扫描索引工具
2016/09/08 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
php让json_encode不自动转义斜杠“/”的方法
2020/04/27 PHP
jquery插件开发方法(初学者)
2012/02/03 Javascript
JavaScript实现网页上的浮动广告的简单方法
2013/06/14 Javascript
jQuery实现等比例缩放大图片让大图片自适应页面布局
2013/10/16 Javascript
js全选按钮的实现方法
2015/11/17 Javascript
学习JavaScript设计模式(接口)
2015/11/26 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
2017/01/27 Javascript
微信小程序用户自定义模版用法实例分析
2017/11/28 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
2017/12/22 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
2019/03/06 Javascript
使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题
2019/05/14 Javascript
JavaScript如何实现图片处理与合成
2020/05/29 Javascript
vue实现简单图片上传
2020/06/30 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
Python如何实现动态数组
2019/11/02 Python
css3闪亮进度条效果实现思路及代码
2013/04/17 HTML / CSS
FOREO官方网站:LUNA露娜洁面仪
2016/11/28 全球购物
工程地质勘察专业大学生求职信
2013/10/13 职场文书
计算机通信工程专业毕业生推荐信
2013/12/24 职场文书
政风行风评议整改方案
2014/09/15 职场文书
转让协议书
2015/01/27 职场文书
2015年度村委会工作总结
2015/04/29 职场文书
初三英语教学反思
2016/02/15 职场文书
简历自我评价范文
2019/04/24 职场文书