用于统计项目中代码总行数的Python脚本分享

yipeiwu_com6年前Python基础

最近需要统计一下项目中代码的总行数,写了一个Python小程序,不得不说Python是多么的简洁,如果用Java写至少是现在代码的2倍。
[code]
import os
path="/Users/rony/workspace/ecommerce/ecommerce/hot-deploy/"
global totalcount
totalcount =0
def cfile (path):
    allfiles = os.listdir(path)
    for file in allfiles:
        child = os.path.join(path,file)
        if os.path.isdir(child):
            cfile(child)
        else:
            filename,fileext= os.path.splitext(child)
            print(fileext)
            #file type need to calculate
            if fileext in ['.java', '.jsp', '.html', '.htm', '.xml', '.sql', '.js', '.ftl', '.css','.groovy'] :
                countf = len(open(child,'rU').readlines())
                global totalcount
                totalcount=totalcount+countf;
                print(child)
                print(countf)
cfile(path)
print(totalcount)

关于代码上的分析就到这里,例子比较简单。

相关文章

python调用并链接MATLAB脚本详解

发现一个很简单的配置方法,一直想写的没写上,今天抽空就把它给补充完整好了。 本文的配置方法Windows,Mac和Linux系统均适合。 一.安装MATLAB Engine API fo...

python IDLE 背景以及字体大小的修改方法

python IDLE 背景以及字体大小的修改方法

为了保护眼睛,决定把白色背景换掉: 1 首先,在已经下载好的python文件目录下,找到config-highlight.def文件,我的是在H:\python\python3**\...

简介Python设计模式中的代理模式与模板方法模式编程

代理模式 Proxy模式是一种常用的设计模式,它主要用来通过一个对象(比如B)给一个对象(比如A) 提供'代理'的方式方式访问。比如一个对象不方便直接引用,代理就在这个对象和访问者之间做...

Django将默认的SQLite更换为MySQL的实现

1、注释默认的SQLite3配置: blogproject/settings.py ''' DATABASES = { 'default': { 'ENGINE': 'djan...

python版本五子棋的实现代码

python版本五子棋的实现代码

正文之前 前阵子做了个《人工智能》 的课程作业,然后写了个人工智障。。。大概就是个可以跟你下五子棋的傻儿子。。。下面是代码和效果 正文 1、 摘要 机器博弈是人工智能领域的重要分支,它...