Python脚本实现代码行数统计代码分享


Posted in Python onMarch 10, 2015

之前用bash实现过(https://3water.com/article/61943.htm),不过那个不能在windows下使用,所以就写了个python版,也方便我以后使用……这里就不多介绍了,不懂的google下。

实现代码

#!/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 相关文章推荐
Python实现把数字转换成中文
Jun 29 Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
Oct 26 Python
在python中获取div的文本内容并和想定结果进行对比详解
Jan 02 Python
对Python3 序列解包详解
Feb 16 Python
Django框架模板文件使用及模板文件加载顺序分析
May 23 Python
浅谈django2.0 ForeignKey参数的变化
Aug 06 Python
Django CBV与FBV原理及实例详解
Aug 12 Python
Python matplotlib画曲线例题解析
Feb 07 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
Feb 18 Python
通过代码实例了解Python3编程技巧
Oct 13 Python
python上下文管理器异常问题解决方法
Feb 07 Python
如何用 Python 子进程关闭 Excel 自动化中的弹窗
May 07 Python
Windows系统配置python脚本开机启动的3种方法分享
Mar 10 #Python
Python自动化构建工具scons使用入门笔记
Mar 10 #Python
Python操作CouchDB数据库简单示例
Mar 10 #Python
Python性能优化技巧
Mar 09 #Python
Python中的赋值、浅拷贝、深拷贝介绍
Mar 09 #Python
Python自动连接ssh的方法
Mar 07 #Python
Python最长公共子串算法实例
Mar 07 #Python
You might like
PHP中使用php5-ffmpeg撷取视频图片实例
2015/01/07 PHP
基于php实现七牛抓取远程图片
2015/12/01 PHP
php 时间time与日期date之间的使用详解及区别
2016/11/07 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
PHP的RSA加密解密方法以及开发接口使用
2018/02/11 PHP
起点页面传值js,有空研究学习下
2010/01/25 Javascript
jquery插件jquery倒计时插件分享
2013/12/27 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
2014/05/11 Javascript
jQuery实现自定义右键菜单的树状菜单效果
2015/09/02 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
js手动播放图片实现图片轮播效果
2016/09/17 Javascript
详解vue-cli本地环境API代理设置和解决跨域
2017/09/05 Javascript
浅谈vue,angular,react数据双向绑定原理分析
2017/11/28 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
JavaScript中arguments和this对象用法分析
2018/08/08 Javascript
JS实现百度网盘任意文件强制下载功能
2018/08/31 Javascript
Vue.js实现的购物车功能详解
2019/01/27 Javascript
微信小程序开发注意指南和优化实践(小结)
2019/06/21 Javascript
Python break语句详解
2014/03/11 Python
Python运算符重载详解及实例代码
2017/03/07 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
Python3 实现文件批量重命名示例代码
2019/06/03 Python
python实现大量图片重命名
2020/03/23 Python
基于python监控程序是否关闭
2020/01/14 Python
Numpy中的数组搜索中np.where方法详细介绍
2021/01/08 Python
安全的后院和健身蹦床:JumpSport
2019/07/15 全球购物
沙特阿拉伯电子产品和家用电器购物网站:Black Box
2019/07/24 全球购物
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
技校毕业生的自我评价
2013/12/27 职场文书
超市中秋节活动方案
2014/02/12 职场文书
2015社区健康教育工作总结
2015/05/20 职场文书
创业的9条正确思考方式
2019/08/26 职场文书
2019年个人工作总结范文(3篇)
2019/08/27 职场文书
python实现双向链表原理
2022/05/25 Python