博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python3 统计代码 - 练手小程序(一)
阅读量:2491 次
发布时间:2019-05-11

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

引言

计算代码行数,看看自己项目的规模,不知道自己项目的规模,怎么好吹牛逼呢?

说起来,我也是维护过三百万代码量的项目的人。(我吹个牛逼,应该不至于骂我吧)

你知我长短,我知你深浅,知己知彼,知己知彼啊。

简介

操作系统:window7 x64

编程IDE:Pycharm 2016.1.2
Python版本:3.6.1
编辑时间:2017年4月24日

版权所有:_ O E _ , 转载请注明出处:

效果

这里写图片描述

  • 获得所有文件名

    这里用到了递归,新手有必要好好看下。

  • 计算每个文件名的行数

获得目录下所有文件名

import os# 要检查的文件类型dict_filetype = ["cpp", "c", "h"]# brief : 递归获得所有文件名# param : path 起始目录,要检查的根目录# param : allfile 填空即可# return: 列表 所有与 dict_filetype 对应的文件名def get_filename(path, allfile):    filelist = os.listdir(path)    for filename in filelist:        filepath = os.path.join(path, filename)        # 判断文件夹        if os.path.isdir(filepath):            # 文件夹继续递归            get_filename(filepath, allfile)        else:            # 文件,判断文件类型            for filetype in dict_filetype:                temp_file_type = filepath.split(".")                if filetype == temp_file_type[-1:][0]:                    allfile.append(filepath)                    break            # 展示所有非code文件            else:                print("the file is not code : %s" %filepath )    return allfile

获得文件总行数

# brief : 计算行数# param : listfile 所有要计算的文件名# return: 文件的总行数def calc_fileline(listfile):    file_line_count = 0    for file in listfile:        with open(file,'rb') as f:            temp = len(f.readlines())            file_line_count += temp    return file_line_count

最后的调用

# 要检查的目标地址dest_filepath = r"F:\storage\Core\Window_Custom\screenshot\demo"print("\n\ncode sum lines: %d\n" % calc(dest_filepath))
你可能感兴趣的文章
MAC终端安装grunt--javascript世界得构建工具
查看>>
FL-EM7688 Smart评估板openwrt开发环境搭建(linux固件部分)
查看>>
LeetCode String Compression
查看>>
PHP常用的正则表达式(有些需要调整)
查看>>
linux查看文件大小
查看>>
跨域学习笔记2--WebApi 跨域问题解决方案:CORS
查看>>
Visual C++2010的使用
查看>>
牛顿插值法及其C++实现
查看>>
域名解析文件hosts文件是什么?如何修改hosts文件?
查看>>
Android开发技巧——ViewPager加View情况封装PagerAdapter的实现类
查看>>
Delphi面向对象学习随笔七:COM
查看>>
高精度乘法
查看>>
CSS3实践之路(一):CSS3之我观
查看>>
pgbench
查看>>
写了两个简单的小工具,文件夹文件操作的
查看>>
Security Tables
查看>>
迷宫bfs
查看>>
HA2795Billboard 可用线段树
查看>>
织梦标签大全
查看>>
2019牛客暑期多校训练营(第一场) - B - Integration - 数学
查看>>