【Python】代码行数统计
两级目录,可扩展为N级。
# Count the line of dir or file import os, fnmatch, fileinput def ChkFileType(lst):
tmp = lst
FileType = ['asm', 'c', 'cpp', 'h', 'ucf', 'v', 'java', 'm']
for filename in tmp:
flg = 1
for types in FileType:
if fnmatch.fnmatch(filename.lower(), "*."+types):
flg = 0
break
if (flg):
lst.remove(filename) def CountInsideFile(pathname):
if not os.path.exists(pathname):
print ("%s not exists." % pathname)
return -1
elif not os.path.isdir(pathname):
print ("%s not directory." % pathname)
return -1
# Get the files and check the type
lst = os.listdir(pathname)
ChkFileType(lst)
# build a tuple for fileinput
filegp = tuple(pathname+filename for filename in lst) total = 0
with fileinput.input(files=filegp) as fin:
for line in fin:
total += 1
# Pay attention to close
fileinput.close()
print (total, pathname)
return total if __name__ == "main":
desname = "count.txt"
En2Ch = {"compile":"编译原理",
"C":"C",
"C++":"C++",
"MIPS":"MIPS",
"NC4S":"NC4S",
"OS":"OS",
"pic":"计算机图形学",
"pattern":"模式识别",
"video":"视频标注",
"embed":"嵌入式",
"datastruct":"数据结构",
"database":"数据库",
"network":"网络",
"interface":"微机原理"}
# desname = sys.argv[1]
#if desname is None:
# desname = count.txt
basename = "E:\\python\\"
fin = open(basename+desname, "w") ParrentPath = basename+"code\\"
LstDir = os.listdir(ParrentPath)
print (LstDir) total = 0
for dirname in LstDir:
cnt = CountInsideFile(ParrentPath+dirname+"\\")
if cnt<0:
break
fin.write("%-12s %8d\n" % (dirname, cnt))
total += cnt
# write an blank line in the end
fin.write("%-12s %8d\n\n" % ("total", total))
fin.close()
【Python】代码行数统计的更多相关文章
- java代码行数统计工具类
package com.syl.demo.test; import java.io.*; /** * java代码行数统计工具类 * Created by 孙义朗 on 2017/11/17 0017 ...
- Python实现代码行数统计工具
我们经常想要统计项目的代码行数,但是如果想统计功能比较完善可能就不是那么简单了, 今天我们来看一下如何用python来实现一个代码行统计工具. 思路:首先获取所有文件,然后统计每个文件中代码的行数,最 ...
- 【转】VS 代码行数统计
[转自]http://www.cnblogs.com/JuneZhang/archive/2013/01/10/2854572.html VS用正则表达式统计代码行数 利用VS2010的查找功能和正则 ...
- Android Studio代码行数统计插件Statistics
Android Studio 是没有提提供统计代码全部行数的功能的,但是对于开发者来说,这个功能确实必备的,Statistic统计代码行数非常方便,也很详细. 1,首先肯定是将插件下载下来,下载地址: ...
- [转] 一句shell命令搞定代码行数统计
今天面试时,突然被面试官问到怎样用shell命令搞定某个文件夹下java代码行数的统计. 想了一下,基本思路就是找到这个文件夹下面的所有java文件,然后每个文件统计一下代码,外层套个for循环,叠加 ...
- 代码行数统计(mac)
如何统计自己的代码量?下面介绍两个方法: 一.cloc 1.首先,安装homebrew,已安装的请跳过. 打开终端工具Terminal,输入下列命令.过程中会让你按RETURN键以及输入mac桌面密码 ...
- Git代码行数统计命令
统计zhangsan在某个时间段内的git新增删除代码行数 git log --author=zhangsan--since=2018-01-01 --until=2019-04-01 --forma ...
- 代码行数统计的Java和Python实现
通过编写程序来统计文件的行数,可以在巩固文件IO知识的同时计算出自己的代码量,以下分别提供Java和Python实现的版本. 解决思路 两种版本的思路几乎相同,每一个文件夹(目录)内的行数都是其所有子 ...
- GitLab代码行数统计--统计增加与删除行数
#!/bin/bashmaster_dev='master'date_star='2018-11-01'date_end='2018-11-30'path1=`find /home/gitlab_da ...
随机推荐
- Operation not allowed for reason code "7" on table 原因码 "7"的解决
对表进行任何操作都不被允许,提示SQLSTATE=57016 SQLCODE=-668 ,原因码 "7"的错误:SQL0668N Operation not allowed for ...
- 批处理 Mysql Findstr
@set Dump_IP=localhost @set User_Name=root @set Password=1234 @set curPath=%~dp0 mysql -h %Dump_IP% ...
- 12天学好C语言——记录我的C语言学习之路(Day 10)
12天学好C语言--记录我的C语言学习之路 Day 10: 接着昨天的指针部分学习,有这么一个题目: //还是四个学生,四门成绩,只要有学生一门功课没及格就输出这个学生的所有成绩 /*//progra ...
- [MAXscript Tool]TimeSlider v1.3
一个简单的小工具,方便在MAX里面快速的修改帧速率,像maya一样.具体看视频演示.
- css 利用border属性制作箭头 Using Borders to Make Pure CSS Arrows
不再需要多余的图片 用border属性自然能创造箭头效果 学习地址:http://tech.patientslikeme.com/2010/11/09/using-borders-to-make-pu ...
- mysql cluster 安装配置方案
mysql cluster (mysql 集群)安装配置方案 一.准备 1.准备服务器 计划建立有5个节点的MySQL CLuster体系,需要用到5台服务器,但是我们做实验时没有这么多机器,可以 ...
- highcharts图表
最近项目中用到highcharts雷达图,如下 其实echarts就不错,echarts用canvas,highcharts用svg,各有特点 代码如下: index.html <!doctyp ...
- 相册弹窗(基于zepto.js)
//放大图片 $(page).on('click','.popupImage img',function () { var that = $(this); that.popupImage({ this ...
- php中 __autoload函数 自动加载类文件机制
魔术函数,自动加载机制function __autoload($class_name) { //自动传递的是类名$path = str_replace('_', '/', $class_name) ...
- 在jsp中运用ajax实现同一界面不跳转处理事件
目前,编写应用程序时有两种基本的选择: 桌面应用程序 Web应用程序 它们有什么区别呢?桌面应用程序一般很快(就在您的计算机上运行,不用等待互联网连接),具有漂亮的用户界面(通常和操作系统有关)和非凡 ...