博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
统计已写代码行数练习题
阅读量:4595 次
发布时间:2019-06-09

本文共 1479 字,大约阅读时间需要 4 分钟。

统计已写代码行数,准备做全文件函数名类名变量名替换!

1 import easygui as g 2 import os 3 def 显示结果(开始目录): 4     行数 = 0 5     总数 = 0 6     文本 = "" 7     for i in 来源列表: 8         行数 = 来源列表[i] 9         总数 += 行数10         文本 += "【%s】源文件 %d 个,源代码 %d 行\n" % (i, 文件列表[i], 行数)11     标题 = '统计结果'12     统计结果 = '您目前共累积编写了 %d 行代码,完成进度:%.2f %%\n离 10 万行代码还差 %d 行,请继续努力!' % (总数, 总数 / 1000, 100000 - 总数)13     g.textbox(统计结果, 标题, 文本)14 def 计算(文件名):15     行数 = 016     with open(文件名) as f:17         print('正在分析文件:%s ...' % 文件名)18         try:19             for 每行 in f:20                 行数 += 121         except UnicodeDecodeError:22             pass  # 不可避免会遇到格式不兼容的文件,这里忽略掉......23     return 行数24 def 搜索文件(开始目录):25     os.chdir(开始目录)26     for 每个文件 in os.listdir(os.curdir):27         ext = os.path.splitext(每个文件)[1]28         if ext in 目标:29             行数 = 计算(每个文件)  # 统计行数30             # 异常?如果字典中不存,抛出 KeyError,则添加字典键31             # 统计文件数32             try:33                 文件列表[ext] += 134             except KeyError:35                 文件列表[ext] = 136             # 统计源代码行数37             try:38                 来源列表[ext] += 行数39             except KeyError:40                 来源列表[ext] = 行数41         if os.path.isdir(每个文件):42             搜索文件(每个文件)  # 递归调用43             os.chdir(os.pardir)  # 递归调用后切记返回上一层目录44 目标 = ['.py']45 文件列表 = {}46 来源列表 = {}47 g.msgbox("请打开您存放所有代码的文件夹......", "统计代码量")48 路径 = g.diropenbox("请选择您的代码库:")49 搜索文件(路径)50 显示结果(路径)

 

转载于:https://www.cnblogs.com/lixiaomingpython/p/6740288.html

你可能感兴趣的文章
linux date命令
查看>>
程序执行流程/布尔类型与布尔:运算猜数字游戏;库的使用:turtle
查看>>
C# 连接Oracle,进行查询,插入操作
查看>>
Linux内核0.11 bootsect文件说明
查看>>
240.Search in a 2D Matrix II
查看>>
react 组件的生命周期
查看>>
[00013]-[2015-08-27]-[01]-[Windows 程序设计 ---GDI+ 截图---> BMP OR JPG OR PNG ...]
查看>>
linux用户
查看>>
空间距离计算
查看>>
180128-----Java面试题
查看>>
java①
查看>>
CentOS7静态IP设置
查看>>
java ee开发杂记
查看>>
php小程序支付代码(微信公众平台,完整版)
查看>>
笔试题总结
查看>>
nginx 使用总结
查看>>
贝多芬《升c小调第十四钢琴奏鸣曲》 个人浅谈
查看>>
了解一些多线程相关的知识
查看>>
C#入门详解(11)
查看>>
JQuery的ajax的用法 在asp中使用 $.ajax()
查看>>