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连接sql server乱码的解决方法
Jan 28 Python
Python的迭代器和生成器使用实例
Jan 14 Python
Python做文本按行去重的实现方法
Oct 19 Python
Python socket网络编程TCP/IP服务器与客户端通信
Jan 05 Python
Python中struct模块对字节流/二进制流的操作教程
Jan 21 Python
python多进程提取处理大量文本的关键词方法
Jun 05 Python
python中break、continue 、exit() 、pass终止循环的区别详解
Jul 08 Python
python实现代码统计器
Sep 19 Python
Django实现网页分页功能
Oct 31 Python
Python 使用 environs 库定义环境变量的方法
Feb 25 Python
python中print格式化输出的问题
Apr 16 Python
python使用openpyxl库读写Excel表格的方法(增删改查操作)
May 02 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 array_walk() 数组函数
2011/07/12 PHP
深入PHP变量存储的详解
2013/06/13 PHP
php redis实现文章发布系统(用户投票系统)
2017/03/04 PHP
php PDO实现的事务回滚示例
2017/03/23 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
JS支持带x身份证号码验证函数
2008/08/10 Javascript
Javascript堆排序算法详解
2014/12/03 Javascript
node.js中的buffer.toString方法使用说明
2014/12/14 Javascript
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
AngularJS入门教程之AngularJS指令
2016/04/18 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
利用angular.copy取消变量的双向绑定与解析
2016/11/25 Javascript
详解Node.js串行化流程控制
2017/05/04 Javascript
vue引入swiper插件的使用实例
2017/07/19 Javascript
关于vue.js组件数据流的问题
2017/07/26 Javascript
webpack打包node.js后端项目的方法
2018/03/10 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
2019/09/18 Javascript
浅谈Layui的eleTree树式选择器使用方法
2019/09/25 Javascript
这样回答继承可能面试官更满意
2019/12/10 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
举例详解Python中的split()函数的使用方法
2015/04/07 Python
pandas 对series和dataframe进行排序的实例
2018/06/09 Python
浅谈Python的条件判断语句if/else语句
2019/03/21 Python
python批量生成条形码的示例
2020/10/10 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
The Hut英国:英国领先的豪华在线百货商店
2019/07/26 全球购物
美国一站式电动和手动工具商店:International Tool
2020/11/26 全球购物
毕业研究生的自我鉴定
2013/11/30 职场文书
企业行政文员岗位职责
2013/12/03 职场文书
《鞋匠的儿子》教学反思
2014/03/02 职场文书
2014年医学生毕业自我鉴定
2014/03/26 职场文书
公司总经理助理岗位职责
2014/07/09 职场文书
高三语文复习计划
2015/01/19 职场文书
建房合同协议书
2016/03/21 职场文书
MySQL 四种连接和多表查询详解
2021/07/16 MySQL