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赋值操作方法分享
Mar 23 Python
python计算最大优先级队列实例
Dec 18 Python
Python中字符编码简介、方法及使用建议
Jan 08 Python
Python利用Beautiful Soup模块创建对象详解
Mar 27 Python
使用C++扩展Python的功能详解
Jan 12 Python
opencv python 基于KNN的手写体识别的实例
Aug 03 Python
浅析Python四种数据类型
Sep 26 Python
python分块读取大数据,避免内存不足的方法
Dec 10 Python
在python plt图表中文字大小调节的方法
Jul 08 Python
Python从入门到精通之环境搭建教程图解
Sep 26 Python
python初步实现word2vec操作
Jun 09 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 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安全之直接用$获取值而不$_GET 字符转义
2012/06/03 PHP
PHPAnalysis中文分词类详解
2014/06/13 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
Linux环境下php实现给网站截图的方法
2016/05/03 PHP
PHP检查网站是否宕机的方法示例
2017/07/24 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
silverlight线程与基于事件驱动javascript引擎(实现轨迹回放功能)
2011/08/09 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
JavaScript初学者建议:不要去管浏览器兼容
2014/02/04 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
2014/04/10 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
2015/03/24 Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
2015/04/14 Javascript
jQuery+css实现的时钟效果(兼容各浏览器)
2016/01/27 Javascript
jquery判断页面网址是否有效的两种方法
2016/12/11 Javascript
Node.js Mongodb 密码特殊字符 @的解决方法
2017/04/11 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
使用mixins实现elementUI表单全局验证的解决方法
2019/04/02 Javascript
JavaScript实现移动端弹窗后禁止滚动
2020/05/25 Javascript
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
spyder常用快捷键(分享)
2017/07/19 Python
python机器学习库常用汇总
2017/11/15 Python
Python简易计算器制作方法代码详解
2019/10/31 Python
canvas粒子动画背景的实现示例
2018/09/03 HTML / CSS
canvas线条的属性详解
2018/03/27 HTML / CSS
德国最大的拼图在线商店:Puzzle.de
2016/12/17 全球购物
施华洛世奇日本官网:SWAROVSKI日本
2018/05/04 全球购物
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
中专毕业生自我鉴定
2014/02/02 职场文书
保护环境标语
2014/06/09 职场文书
毕业证代领委托书
2014/09/26 职场文书
个人融资协议书
2014/10/02 职场文书
简单的离婚协议书范本
2014/11/16 职场文书
2014年留守儿童工作总结
2014/12/10 职场文书
理解python中装饰器的作用
2021/07/21 Python
uniapp 微信小程序 自定义tabBar 导航
2022/04/22 Javascript