代码量简单统计

代码量简单统计

def count_code(file_path):  # 单文件代码统计
    count=0
    tag=False
    with open(file_path, 'r', encoding='utf-8') as f:
        for line in f:
            if tag and line.startswith('"""') or line.startswith("'''"):
                tag=False
            if tag and  not line.startswith('"""') or line.startswith("'''"):
                continue
            if line.startswith("#"):
                continue
            if line.startswith('\n'):
                continue
            count+=1
        return count

# 所有代码统计量
def count_file_code(top_packge):
    count_sum = 0
    # 针对文件做处理
    if os.path.isfile(top_packge):
        count=count_code(top_packge)
        return count

    # 针对文件夹做处理

    res = os.walk(top_packge)  # 只针对文件夹
    for dir, _, files in res:
        # print(files)
        for file in files:
            file_path = os.path.join(dir, file)
            # print(file_path)
            if file_path.endswith('.py'):
            # print(file_path)
                count=count_code(file_path)   # 单文件代码统计
                count_sum += count
    return count_sum

top=r'G:\Python代码日常\第一阶段\1阶段\模块\md.py'
count_sum=count_file_code(top)
print(f'{top}文件夹统计代码量为:{count_sum}')

原文地址:https://www.cnblogs.com/zhangchaocoming/p/11626169.html

时间: 2024-10-30 00:47:57

代码量简单统计的相关文章

“代码量统计脚本”

概述 本文从一段统计C/C++程序脚本入手,记录shell脚本常用和重要的知识点. 代码量统计程序 文件名称,count_code_line.sh 123456789101112131415161718192021222324252627282930313233343536 #!/bin/bash # 统计代码行数 去除空格和注释# author: by wangxintang function count_dir(){ total1=0 for input in $* do count=`fi

git代码量统计(转载)

git统计某人代码量 指定用户名版 git log --author="your_name_here" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' 结果示例:added lines:

(八)简单了解下angularJS框架中NB的双向数据绑定机制,大大减少需要重复的开发代码量

之前写的第一篇angularJS入门文章 ,介绍ng-model的时候提到:使用angularJS的双向数据绑定机制,不需要我们编写繁琐的代码来实现同样的功能.现在我们看一个比较震撼的例子,看看angularJS是如何减少我们在前端开发中的繁琐劳动的.越是感受到框架功能的强大,越是能够激发学习的兴趣和动力. 假如我们有一个学生信息列表,包含学生的姓名.地址和年龄信息.假如这个数据源信息保存在data.js文件中. var g_phones = [ <span style="white-sp

统计代码量的小程序

比较简陋的统计代码的小工具,  根据自己的需求改改吧. import java.awt.EventQueue; import java.awt.Font; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOExcept

Mac OS X代码量统计程序(Python版)

方便统计各种平台项目的代码量,主要用到了find指令来进行处理的详情点击打开链接: 源代码下载点击打开链接 源代码如下: # -*- coding: utf-8 -*- ''' Created on Jul 18, 2014 @author: Jayhomzhou @note: 计算注释以及代码的总行数(即代码量) ''' import subprocess def countCodes(codePath, fileTypes): typeStrs = '' for ft in fileType

svn代码量统计工具

StatSVN介绍 StatSVN是一个Java写的开源代码统计程序,从statCVS移植而来,能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表.比如:代码行数的时间线:针对每个开发者的代码行数:开发者的活跃程度:开发者最近所提交的:文件数量:平均文件大小:最大文件:哪个文件是修改最多次数的:目录大小:带有文件数量和代码行数的Repository tree.StatSVN当前版本能够生成一组包括表格与图表的静态HTML文档. StatSVN下载 StartSVN官

[statsvn]-svn代码量统计

用statasvn进行代码量统计的时候,第一步需要获取到项目的日志,但是我本机的svn1.4没有安装命令行,重新运行1.4的安装包也没有命令行的选项... 那就升级到最新的svn1.8好了,下载最新的svn安装包,按照要求直接运行了两次安装,第一次安装,第二次修复,然后重点来了,重启的时候报MSVCP120.dll丢失的错误,原来的svn也不能用了啊 然后在网上找到一个解决方案: http://6.scdx3.crsky.com/soft/201407/DirectX_Repair-v3.2.z

(转)通过gitlab统计git提交的代码量

git的代码量大多数都是根据命令行统计,或者根据第三方插件统计.但是都不满足我的需求,因为我们代码都由gitlab管理,于是想到了通过gitlab暴露出来的接口获取数据. 第一步,生成私钥 登录你的gitlab申请私钥private_token 第二步,获取当前用户可见的所有项目(即使用户不是成员) 接口地址:gitlab的地址/api/v4/projects/?private_token=xxx返回参数: [{ "id":219, "description":&q

IDEA 代码量统计(Statistic)

IDEA 代码量统计(Statistic) 1.1 前言 项目到了一定阶段,都会想要看看项目的代码量情况,这里主要使用插件Statistic进行代码统计查看. 1.2 安装插件步骤 找到插件市场入口并安装插件:File-->Setting...-->Plugins,按照图片步骤,1点击安装tab页,2输入Statistic关键字,3勾选插件,4点击OK进行安装: 安装成功后重启IDEA 重启完毕后等待编辑器初始化相关信息,然后在编辑器左下方找到Statistic插件,点击打开主界面: 点击Re