python 统计代码行数简单实例


Posted in Python onMay 04, 2017

 python 统计代码行数简单实例

送测的时候,发现需要统计代码行数

于是写了个小程序统计自己的代码的行数。

#calclate_code_lines.py 
import os 
 
def afileline(f_path): 
  res = 0 
  f = open(f_path) 
  for lines in f: 
    if lines.split(): 
      res += 1 
  return res 
 
if __name__=='__main__': 
  host = 'E:'+os.sep+'develop'+os.sep+'dev_workspace'+os.sep+'AptanaStudio3'+os.sep+'webhost' 
   
  allfiles = 0 
  allline = 0 
     
  for root,dirs,files in os.walk(host): 
    for afile in files: 
       
      if(root.startswith(host+os.sep+'entries')): 
        continue 
      elif(root.startswith(host+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'.settings')): 
        continue 
      elif(root.startswith(host+os.sep+'logs')): 
        continue 
      elif(root.startswith(host+os.sep+'static')): 
        continue  
      elif(root.startswith(host+os.sep+'payload'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'dist'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'dsync'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'hcache'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'test'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'webhost'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'wsgi'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'hcache'+os.sep+'templates'+os.sep+'.svn')): 
        continue 
      elif(root.startswith(host+os.sep+'dsync'+os.sep+'hcache'+os.sep+'.svn')): 
        continue 
      else:  
        ext = afile.split('.') 
        ext = ext[-1] 
        if (ext in ['py','css','js','html','txt','docx','wsgi']): 
          itpath = root+os.sep+afile 
          allfiles += 1 
          allline +=afileline(itpath) 
          print (root+os.sep+afile) 
           
  print ('Total: ',allfiles) 
  print ('Total lines:',allline)

之后可以将此改造下便于以后的代码统计

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python 批量修改/替换数据的实例
Jul 25 Python
python入门:这篇文章带你直接学会python
Sep 14 Python
对Python3 * 和 ** 运算符详解
Feb 16 Python
Python GUI编程完整示例
Apr 04 Python
Python自动化导出zabbix数据并发邮件脚本
Aug 16 Python
使用OpenCV实现仿射变换—平移功能
Aug 29 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
python单向循环链表原理与实现方法示例
Dec 03 Python
Python字典添加,删除,查询等相关操作方法详解
Feb 07 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
Jun 09 Python
详解python中的闭包
Sep 07 Python
Python中qutip用法示例详解
Oct 02 Python
利用PyInstaller将python程序.py转为.exe的方法详解
May 03 #Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
May 03 #Python
利用numpy+matplotlib绘图的基本操作教程
May 03 #Python
利用matplotlib+numpy绘制多种绘图的方法实例
May 03 #Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 #Python
python中解析json格式文件的方法示例
May 03 #Python
Pycharm学习教程(4) Python解释器的相关配置
May 03 #Python
You might like
PHP 面向对象实现代码
2009/11/11 PHP
php 分库分表hash算法
2009/11/12 PHP
PHP中删除变量时unset()和null的区别分析
2011/01/27 PHP
php递归创建和删除文件夹的代码小结
2012/04/13 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
php 处理png图片白色背景色改为透明色的实例代码
2018/12/10 PHP
记录几个javascript有关的小细节
2007/04/02 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
JS实现标签滚动切换效果
2017/12/25 Javascript
微信小程序使用setData修改数组中单个对象的方法分析
2018/12/30 Javascript
微信公众号H5支付接口调用方法
2019/01/10 Javascript
node获取客户端ip功能简单示例
2019/08/24 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
python 测试实现方法
2008/12/24 Python
Python 调用DLL操作抄表机
2009/01/12 Python
Python减少循环层次和缩进的技巧分析
2016/03/15 Python
python3实现域名查询和whois查询功能
2018/06/21 Python
将Dataframe数据转化为ndarry数据的方法
2018/06/28 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
2019/06/19 Python
Atom Python 配置Python3 解释器的方法
2019/08/28 Python
Django values()和value_list()的使用
2020/03/31 Python
Roots加拿大官网:加拿大休闲服饰品牌
2016/10/24 全球购物
菲律宾酒店预订网站:Hotels.com菲律宾
2017/07/12 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2016/01/06 面试题
公司年会搞笑主持词
2014/03/24 职场文书
消防安全标语
2014/06/07 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
秋收起义观后感
2015/06/11 职场文书
医生行业员工的辞职信
2019/06/24 职场文书
java高级用法JNA强大的Memory和Pointer
2022/04/19 Java/Android