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之wxPython应用实例
Sep 28 Python
Python入门篇之字符串
Oct 17 Python
python中Genarator函数用法分析
Apr 08 Python
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
利用django如何解析用户上传的excel文件
Jul 24 Python
python使用tensorflow深度学习识别验证码
Apr 03 Python
DataFrame中去除指定列为空的行方法
Apr 08 Python
Python 在字符串中加入变量的实例讲解
May 02 Python
Windows下python3安装tkinter的问题及解决方法
Jan 06 Python
python + selenium 刷B站播放量的实例代码
Jun 12 Python
python中random模块详解
Mar 01 Python
Python可视化神器pyecharts绘制水球图
Jul 07 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
《忧国的莫里亚蒂》先导宣传图与STAFF公开
2020/03/04 日漫
DC游戏Steam周三特惠 《蝙蝠侠》阿卡姆系列平史低
2020/04/09 欧美动漫
php合并js请求的例子
2013/11/01 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
JS遮罩层效果 兼容ie firefox jQuery遮罩层
2010/07/26 Javascript
初学js 新节点的创建 删除 的步骤
2011/07/04 Javascript
表单类各种类型(文本框)失去焦点效果jquery代码
2013/04/26 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
jquery showModelDialog的使用方法示例详解
2013/11/19 Javascript
Jquery简单分页实现方法
2015/07/24 Javascript
JavaScript SHA512&SHA256加密算法详解
2015/08/11 Javascript
jquery实现清新实用的网页菜单效果
2015/08/28 Javascript
Javascript复制实例详解
2016/01/28 Javascript
Angular实现form自动布局
2016/01/28 Javascript
简单实现js间歇或无缝滚动效果
2016/06/29 Javascript
nodejs require js文件入口,在package.json中指定默认入口main方法
2018/10/10 NodeJs
javascript运行机制之执行顺序理解
2020/08/03 Javascript
python实现类之间的方法互相调用
2018/04/29 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
在Pycharm中对代码进行注释和缩进的方法详解
2019/01/20 Python
Python给图像添加噪声具体操作
2019/03/03 Python
python中数组和矩阵乘法及使用总结(推荐)
2019/05/18 Python
PyQt5固定窗口大小的方法
2019/06/18 Python
Python tcp传输代码实例解析
2020/03/18 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
flask项目集成swagger的方法
2020/12/09 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
小区门卫工作职责
2013/12/14 职场文书
高中历史教学反思
2014/02/08 职场文书
药学职务聘任书
2014/03/29 职场文书
学校火灾防控方案
2014/06/09 职场文书
介绍信样本
2015/01/31 职场文书
离职证明格式样本
2015/06/12 职场文书
趣味运动会简讯
2015/07/20 职场文书
幼儿园大班教师评语
2019/06/21 职场文书
二手手机买卖合同范本(2019年版)
2019/10/28 职场文书