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的WEB框架Flask中使用多个配置文件的解决方法
Apr 18 Python
Python调用C/C++动态链接库的方法详解
Jul 22 Python
简单解决Python文件中文编码问题
Nov 22 Python
利用Python实现网络测试的脚本分享
May 26 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
Jan 09 Python
python处理csv数据动态显示曲线实例代码
Jan 23 Python
Python针对给定列表中元素进行翻转操作的方法分析
Apr 27 Python
浅析Python装饰器以及装饰器模式
May 28 Python
解决Python正则表达式匹配反斜杠''\''问题
Jul 17 Python
在python中实现同行输入/接收多个数据的示例
Jul 20 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
Python获取指定日期是"星期几"的6种方法
Mar 13 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
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
php将图片保存为不同尺寸图片的图片类实例
2015/03/30 PHP
PHP设计模式之观察者模式定义与用法分析
2019/04/04 PHP
关于laravel模板中生成URL的几种模式总结
2019/10/18 PHP
Use Word to Search for Files
2007/06/15 Javascript
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
javascript 模式设计之工厂模式学习心得
2010/04/27 Javascript
读jQuery之三(构建选择器)
2011/06/11 Javascript
兼容FF和IE的动态table示例自写
2013/10/21 Javascript
自动完成的搜索框javascript实现
2016/02/26 Javascript
利用jQuery设计一个简单的web音乐播放器的实例分享
2016/03/08 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
2017/08/12 Javascript
浅谈Webpack打包优化技巧
2018/06/12 Javascript
微信小程序后端实现授权登录
2020/02/24 Javascript
JavaScript实现多个物体同时运动
2020/03/12 Javascript
[01:19]DOTA2城市挑战赛报名开始 开启你的城市传奇
2018/03/23 DOTA
python的类方法和静态方法
2014/12/13 Python
python 判断网络连通的实现方法
2018/04/22 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
Python Pandas中根据列的值选取多行数据
2019/07/08 Python
windows中安装Python3.8.0的实现方法
2019/11/19 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
使用Python将xmind脑图转成excel用例的实现代码(一)
2020/10/12 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
2020/12/11 Python
Python操作Excel的学习笔记
2021/02/18 Python
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
阿根廷首家户外用品制造商和经销商:Montagne
2018/02/12 全球购物
澳大利亚领先的在线机械五金、园艺和存储专家:Edisons
2018/03/24 全球购物
英国票务网站:Ticketmaster英国
2018/08/27 全球购物
技校毕业生的自我评价
2013/12/27 职场文书
十佳少先队员演讲稿
2014/09/12 职场文书
学生检讨书怎么写
2014/10/09 职场文书
学生安全责任协议书
2016/03/22 职场文书
Go语言实现Base64、Base58编码与解码
2021/07/26 Golang
Vue+Flask实现图片传输功能
2022/04/01 Vue.js