python实现代码统计器


Posted in Python onSeptember 19, 2019

本文实例为大家分享了python中的代码行数统计,供大家参考,具体内容如下

思路:统计文件中代码的总行数减去空行单行注释以及多行注释

功能:

1.获取文件内容的总行数

2.排除空行 单行注释 多行注释

def code_statistics(path):
 # # 打开这个文件
 with open(path, 'r', encoding='utf-8') as openFile:
  # 按列读取
  fileline = openFile.readlines()
  # 给非代码行一个变量
  i = 0
  # 整个文件里面内容的总行数
  number_line = len(fileline)
  # 给多行注释一个状态
  note = False
  # 遍历文件内容
  for line in fileline:
   # 空行
   if line == '\n':
    i += 1
   # 单行注释
   elif re.findall('[#]', line):
    i += 1
   # 多行注释开头
   elif re.findall("\'\'\'", line) and note == False:
    i += 1
    note = True
   # 多行注释结尾
   elif re.findall("\'\'\'", line) and note == True:
    i += 1
    note = False
   # 多行注释内部注释
   elif note:
    i += 1
  num_code_line = number_line - i
  print(num_code_line)

如果统计文件夹中的python文件的代码行数,首先就是要遍历文件目录,筛选出以.py结尾的文件,再去统计py文件里面的代码行数

def get_all_fire(path):
 # 得到当前目录下的所有文件
 file_list = os.listdir(path)
 py_file_abs = []
 # 遍历所有文件
 for file_name in file_list:
  # 获取文件及文件夹的绝对路径
  file_abs = os.path.join(path, file_name)
  if os.path.isfile(file_abs) and file_name.endswith('.py'): # 判断当前文件路径是否是文件和.py文件
   py_file_abs.append(file_abs)
   # 判断当前文件路径是不是文件夹
  elif os.path.isdir(file_abs):
   py_file_abs += get_all_fire(file_abs)
 return py_file_abs

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用Python的Twisted框架实现webshell密码扫描器的教程
Apr 16 Python
Python验证码识别处理实例
Dec 28 Python
python 实现红包随机生成算法的简单实例
Jan 04 Python
在cmd命令行里进入和退出Python程序的方法
May 12 Python
Python之dict(或对象)与json之间的互相转化实例
Jun 05 Python
详解Python 协程的详细用法使用和例子
Jun 15 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 Python
python UDP(udp)协议发送和接收的实例
Jul 22 Python
python 日志模块 日志等级设置失效的解决方案
May 26 Python
python中scrapy处理项目数据的实例分析
Nov 22 Python
Python的logging模块基本用法
Dec 24 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
Jan 12 Python
python实现代码统计程序
Sep 19 #Python
python tkinter图形界面代码统计工具(更新)
Sep 18 #Python
python3获取url文件大小示例代码
Sep 18 #Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
Sep 18 #Python
python3使用GUI统计代码量
Sep 18 #Python
django中的图片验证码功能
Sep 18 #Python
python tkinter图形界面代码统计工具
Sep 18 #Python
You might like
利用 window_onload 实现select默认选择
2006/10/09 PHP
一段多浏览器的"复制到剪贴板"javascript代码
2007/03/27 Javascript
基于Jquery制作的幻灯片图集效果打包下载
2011/02/12 Javascript
js字符串转成JSON
2013/11/07 Javascript
一张表格告诉你windows.onload()与$(document).ready()的区别
2014/05/16 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
jQuery获取页面及个元素高度、宽度的总结——超实用
2015/07/28 Javascript
jQuery实现单击弹出Div层窗口效果(可关闭可拖动)
2015/09/19 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
React如何利用相对于根目录进行引用组件详解
2017/10/09 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
2018/01/03 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
layui.tree组件的使用以及搜索节点功能的实现
2019/09/26 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
Vue实现点击导航栏当前标签后变色功能
2020/08/19 Javascript
python读取Android permission文件
2013/11/01 Python
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
Python urls.py的三种配置写法实例详解
2017/04/28 Python
DataFrame 将某列数据转为数组的方法
2018/04/13 Python
Python地图绘制实操详解
2019/03/04 Python
python实现nao机器人手臂动作控制
2019/04/29 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
详解python模块pychartdir安装及导入问题
2020/10/22 Python
你的自行车健身专家:FaFit24
2016/11/16 全球购物
Unineed旗下时尚轻奢网站:FABHunt
2019/05/13 全球购物
中国专业的音频分享平台:喜马拉雅
2019/05/24 全球购物
英国排名第一的冲浪店:Ann’s Cottage
2020/06/21 全球购物
亚洲领先的设计购物网站:Pinkoi
2020/11/26 全球购物
乡村教师党员四风问题对照检查材料思想汇报
2014/10/08 职场文书
小学六一主持词开场白
2015/05/28 职场文书
2016关于军训的心得体会
2016/01/11 职场文书
人民币使用说明书
2019/04/17 职场文书
React Native项目框架搭建的一些心得体会
2021/05/28 Javascript
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle