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的Django框架中为代码添加注释的方法
Jul 16 Python
Python教程之全局变量用法
Jun 27 Python
python 读取excel文件生成sql文件实例详解
May 12 Python
Python用Pillow(PIL)进行简单的图像操作方法
Jul 07 Python
python判断字符串是否是json格式方法分享
Nov 07 Python
Python+OpenCV让电脑帮你玩微信跳一跳
Jan 04 Python
深入浅析python 中的匿名函数
May 21 Python
celery4+django2定时任务的实现代码
Dec 23 Python
python模拟点击网页按钮实现方法
Feb 25 Python
Python Tkinter Entry和Text的添加与使用详解
Mar 04 Python
Python可视化工具如何实现动态图表
Oct 23 Python
Python多线程实用方法以及共享变量资源竞争问题
Apr 12 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
其他功能
2006/10/09 PHP
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
PHP开发中常用的8个小技巧
2008/08/27 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
smarty学习笔记之常见代码段用法总结
2016/03/19 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
PHP7内核之Reference详解
2019/03/14 PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
2019/03/22 PHP
php测试kafka项目示例
2020/02/06 PHP
JavaScript 对任意元素,自定义右键菜单的实现方法
2013/05/08 Javascript
自己编写的类似JS的trim方法
2013/10/09 Javascript
node.js读取文件到字符串的方法
2015/06/29 Javascript
vue.js选中动态绑定的radio的指定项
2017/06/02 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
2017/08/18 jQuery
vue表单自定义校验规则介绍
2018/08/28 Javascript
微信小程序引入Vant组件库过程解析
2019/08/06 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
Django中几种重定向方法
2015/04/28 Python
python选择排序算法实例总结
2015/07/01 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
Python 面向对象部分知识点小结
2020/03/09 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
python用opencv完成图像分割并进行目标物的提取
2020/05/25 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
CSS3教程:background-clip和background-origin
2008/10/17 HTML / CSS
关于webview适配H5上传照片或者视频文件的方法
2020/11/04 HTML / CSS
June Jacobs尊积帕官网:知名的spa水疗护肤品牌
2019/03/21 全球购物
幼儿园家长评语大全
2014/04/16 职场文书
欢度春节标语
2014/07/01 职场文书
孝敬父母的活动方案
2014/08/31 职场文书
离职感谢信
2015/01/21 职场文书
《我要的是葫芦》教学反思
2016/02/18 职场文书
排查并解决MySQL生产库内存使用率高的报警
2022/04/11 MySQL