广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python实现代码统计(代码+注释+空
  • 254
分享到

Python实现代码统计(代码+注释+空

代码注释Python 2023-01-31 05:01:15 254人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

# -*- coding: utf-8 -*- """ Created on Thu Apr 17 17:15:40 2014 @author: author """ import os; path_head = '代码路径头部' path

# -*- coding: utf-8 -*-
"""
Created on Thu Apr 17 17:15:40 2014
@author: author
"""
import os;
path_head = '代码路径头部'
path_list = '代码绝对路径' 
fileClasses = ['java']   #需要统计的文件类型
totalLines = 0
commentAll = 0
nORMalAll = 0
whiteAll = 0
for root,dirs,files in os.walk(path_head + path_list):
    #处理路径中的 '/'
    dirLen = len(root)
    lastChar = root[dirLen-1:dirLen]
    if lastChar =='/' :
        root = root[0:dirLen-1]
         
    for afile in files:
        fileDir = root+'/'+ afile
             
        #过滤文件类型
        strs = afile.split('.')
        fileClass = strs[len(strs)-1]
        if fileClass not in fileClasses :
            continue
             
        with open(fileDir) as file:
            commentLines = 0
            whiteLines = 0
            normal = 0
            comment = False
                 
            lines = file.readlines()
            for i in lines:
                i = i.strip()
                #空行
                if(i==''):
                    whiteLines=whiteLines+1
                #注释 
                elif(i.startswith('')):
                    commentLines=commentLines+1
                #注释 ')):
                    commentLines=commentLines+1
                    comment=True
                #注释 中间 和 */ 结尾
                elif(True==comment):
                    commentLines=commentLines+1
                    if(i.endswith('*/')):
                        comment=False
                #注释 //
                elif(i.startswith('//')):
                    commentLines=commentLines+1
                #代码
                else:
                    normal=normal+1
            #单文件统计结果
            print ('%s 代码行数:%d 空行数:%d 注释行数:%d'%(fileDir[len(path_head):], normal, whiteLines, commentLines))
            commentAll+= commentLines
            normalAll += normal
            whiteAll += whiteLines
#统计结果
print ('总行数:%d' %(commentAll + normalAll + whiteAll))
print ('总代码行数:%d' %(normalAll))
print ('总注释行数:%d' %(commentAll))
print ('总空行数:%d' %(whiteAll))

参考网上的代码修改而成,没有什么技术含量。

--结束END--

本文标题: Python实现代码统计(代码+注释+空

本文链接: https://www.lsjlt.com/news/188776.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python实现代码统计(代码+注释+空
    # -*- coding: utf-8 -*- """ Created on Thu Apr 17 17:15:40 2014 @author: author """ import os; path_head = '代码路径头部' path...
    99+
    2023-01-31
    代码 注释 Python
  • Python VIM怎样注释掉代码
    本篇文章为大家展示了Python VIM怎样注释掉代码,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。我们在向大家介绍Python VIM 注释掉代码前先给大家介绍一下VIM吧!它具有高效的相关你率移...
    99+
    2023-06-17
  • Python多行代码注释快捷键
    选中要注释的代码,按下ctrl+/注释 ...
    99+
    2023-01-31
    快捷键 注释 代码
  • 统计python代码行数
        addhosts项目已接近尾声,我很想知道我们写了多少行代码。一、需求    统计源码目录下py文件的代码行数。    二、脚本分析    获取指定目录下所有的.py文件,对文件进行遍历;    读取每个文件,对文件内容进行遍历,过...
    99+
    2023-01-31
    行数 代码 python
  • SENet代码复现+超详细注释(PyTorch)
    在卷积网络中通道注意力经常用到SENet模块,来增强网络模型在通道权重的选择能力,进而提点。关于SENet的原理和具体细节,我们在上一篇已经详细的介绍了:经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码...
    99+
    2023-08-31
    pytorch 人工智能 python 神经网络 计算机视觉
  • Python实现代码统计工具(终极篇)
    本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对比。实测表明,CPLineCounter在统计精度和性能...
    99+
    2022-06-04
    代码 工具 Python
  • python 统计代码行数简单实例
    python 统计代码行数简单实例 送测的时候,发现需要统计代码行数 于是写了个小程序统计自己的代码的行数。 #calclate_code_lines.py import os def afi...
    99+
    2022-06-04
    实例 行数 代码
  • 这样写python注释让代码更加的优雅
    python这样注释,让你的代码看起来更加的优雅,是不是常常感觉自己的python代码写出来,看起来特别的乱,虽然可以正常运行,但是在优雅性上似乎欠缺的很多,这篇文章主要教你,如何让...
    99+
    2022-11-12
  • 如何用Python编程在VIM中注释掉代码
    如何用Python编程在VIM中注释掉代码,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。例如,要注释以下3行 Python 代码:def say_hello():&n...
    99+
    2023-06-17
  • 初识Python(注释、代码缩进、编码规范、标识符、变量)
    ✅作者简介:CSDN内容合伙人、阿里云专家博主、51CTO专家博主、新星计划第三季python赛道Top1🏆 📃个人主页:hacker707的csdn博客 ...
    99+
    2023-09-06
    python 代码规范
  • Redis实现UV统计的示例代码
    目录一、HyperlogLog1、为什么用HyperLogLog2、HyperLogLog是什么二、实现UV统计一、HyperLogLog 1、为什么用HyperLogLog 先介绍两个概念: UV:全称 Unique ...
    99+
    2023-01-29
    Redis UV统计
  • Python实现计算AUC的示例代码
    目录为什么这样一个指标可以衡量分类效果auc理解AUC计算方法一方法二实现及验证AUC(Area under curve)是机器学习常用的二分类评测手段,直接含义是ROC曲线下的面积...
    99+
    2022-11-11
  • Python代码实现列表分组计数
    目录1. count_by2. 使用字典推导式3. 使用collections.defaultdict简化代码 本篇阅读的代码片段来自于30-seconds-of-python。 1...
    99+
    2022-11-12
  • python实现新年倒计时实例代码
    目录前言代码:代码效果展示图:总结前言 最近一直心心念念的想着过年回家 于是乎就敲了一个新年倒计时的代码出来 大家用的时候可以更改上面的日期,以后年年都可以用 话不多说,上代码 代码...
    99+
    2022-11-12
  • java代码实现空间切割
    目录问题代码效果演示测试数据结果总结问题 给定一个大的立方体和一批小的立方体,对于每个立方体,都知道如图的信息(知道x,y,z坐标和长、宽、高),且任意小立方体都被包含在大立方体内、...
    99+
    2022-11-12
  • python 代码统计文件的行数
    #!/usr/bin/python#encofing:utf8# 统计文件的行数import sysdef lineCount(fd):        n = 0        for i in fd:                n +...
    99+
    2023-01-31
    行数 代码 文件
  • python中怎么统计代码行数
    这篇文章将为大家详细讲解有关python中怎么统计代码行数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。流程首先判断传入参数是否为文件夹,不是则打印出提示,否则继续(无返回),获得目录后,y...
    99+
    2023-06-02
  • 代码审计—espcmsv5注入测试复现
    一,复现环境准备 所需文件安装包资源 phpstudyv8下载安装 https://www.xp.cn/download.html espcmsv5百度网盘下载链接:https://pan.baidu...
    99+
    2023-10-20
    mysql php 安全
  • Python 代码智能感知类型标注与特殊注释详解
    目录一、代码智能感知二、类型标注函数返回值的类型标注变量的类型标注三、特殊的注释四、特殊的类型一个不会写好的类型标注和注释的Python程序员,是让使用TA的代码的人都痛苦无比的事情...
    99+
    2022-11-11
  • python 代码检查,实现行级代码优化
        有时候运行一个python程序,它需要运行很长时间。你或许想提升该程序的运行效率。那该怎么做那?     首先需要你要找到该程序瓶颈在哪里~   比如,哪个函数的运行花费时间比较长? 哪个函数占用内存比较多,是否需要优化对内存的使用...
    99+
    2023-01-31
    代码 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作