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单例模式实例分析
Apr 08 Python
对python中的six.moves模块的下载函数urlretrieve详解
Dec 19 Python
在Python 不同级目录之间模块的调用方法
Jan 19 Python
Pandas库之DataFrame使用的学习笔记
Jun 21 Python
pygame实现五子棋游戏
Oct 29 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
Apr 01 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
May 08 Python
keras之权重初始化方式
May 21 Python
Keras保存模型并载入模型继续训练的实现
Feb 20 Python
Python爬虫之爬取二手房信息
Apr 27 Python
Python基础之常用库常用方法整理
Apr 30 Python
Python探索生命起源 matplotlib细胞自动机动画演示
Apr 21 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
PHP脚本中include文件出错解决方法
2008/11/20 PHP
记录mysql性能查询过程的使用方法
2013/05/02 PHP
深入PHP许愿墙模块功能分析
2013/06/25 PHP
一个好用的PHP验证码类实例分享
2013/12/27 PHP
php实现格式化多行文本为Js可用格式
2015/04/15 PHP
Smarty模板简单配置与使用方法示例
2016/05/23 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
js对数字的格式化使用说明
2011/01/12 Javascript
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
Js操作树节点自动折叠展开的几种方法
2014/05/05 Javascript
jQuery获取iframe的document对象的方法
2014/10/10 Javascript
JS获取网页图片name属性的方法
2015/04/01 Javascript
javascript模拟C#格式化字符串
2015/08/26 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
基于JS实现仿百度百家主页的轮播图效果
2017/03/06 Javascript
Angular2 组件交互实例详解
2017/08/24 Javascript
微信小程序实现图片翻转效果的实例代码
2019/09/20 Javascript
js实现掷骰子小游戏
2019/10/24 Javascript
js中Function引用类型常见有用的方法和属性详解
2019/12/11 Javascript
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
python中调试或排错的五种方法示例
2019/09/12 Python
Pytorch 使用 nii数据做输入数据的操作
2020/05/26 Python
Pygame框架实现飞机大战
2020/08/07 Python
用HTML5制作一个简单的桌球游戏的教程
2015/05/12 HTML / CSS
编写类String的构造函数、析构函数和赋值函数
2012/05/29 面试题
西安当代医院管理研究院笔试题
2015/12/11 面试题
如何利用find命令查找文件
2016/11/18 面试题
英文求职信结束语大全
2013/10/26 职场文书
生日宴会答谢词
2014/01/09 职场文书
国贸专业自荐信范文
2014/03/02 职场文书
协议书与合同的区别
2014/04/18 职场文书
群众路线剖析材料(四风问题)
2014/10/08 职场文书
干部作风建设工作总结
2014/10/29 职场文书
店铺转让协议书
2014/12/02 职场文书
仰望星空观后感
2015/06/10 职场文书
宾馆安全管理制度
2015/08/06 职场文书