每日代码统计

最近工作不是很忙,在学习《python核心编程3》,给自己定了一个小目标,每天编码1000行,由于我一边看书,一边敲例子,都是在demo目录下面进行的,

所以写了个监听demo目录的脚本,用来统计每天的编码行数,实现思路就是,遍历demo下的所有文件,找到今日创建的文件,将编码行数累加,下面是代码,

欢迎指正!

# -*- coding: utf-8 -*-
"""
author:ruiql
date:2017/9/4
version:1.0

指定一个目录,针对当日的编码情况,做行数统计
"""
import os, sys

import time
from datetime import datetime

EXPECT_ROWS = 1000                  #预期完成行数
SCAN_DIR = ‘/Users/tuyoo/pythondemo/demo‘  #扫描路径

def statisics_rows(file_list):
    row_count = 0
    for file in file_list:
        print ‘#‘,file.name
        row_count += len(file.readlines())
        file.close()
    print ‘今日完成编码行数:%s, 目标行数:%s, 完成度:%0.2f%%‘ % (row_count, EXPECT_ROWS, row_count*1.0/EXPECT_ROWS*100)

def scan_dir_list_today_create(scan_dir):
    ‘‘‘
    扫描目录,得到今日创建的文件列表
    :param scan_dir:
    :return:
    ‘‘‘
    result = []
    if not os.path.isdir(scan_dir):
        raise Exception

    _recur_dir_get_file(scan_dir, result)
    return result

def _recur_dir_get_file(sub_dir, result):

    for parent, dirnames, filenames in os.walk(sub_dir):

        for file in filenames:
            print parent+‘/‘+file
            file = _is_today_create(parent+‘/‘+file)
            if file:
                result.append(file)

def _is_today_create(file):
    create_time = os.path.getctime(file)
    f_create_time = datetime.fromtimestamp(create_time)
    now = datetime.now()
    if (now - f_create_time).days == 0:
        return open(file)
    return False

statisics_rows(scan_dir_list_today_create(SCAN_DIR))
时间: 2024-12-11 20:11:14

每日代码统计的相关文章

简易的代码统计工具

/* 把所有 .cpp 文件放到与程序相同目录,ctrl+A 全选,F2重命名为 a (系统自动改为 a (1).cpp.a (2).cpp.a (3).cpp --), 输入文件个数,开始统计. 若出现异常,可以尝试吧所有文件重命名为 b (系统自动改为 b (1).cpp -- ) ,再重命名为 a */ #include <stdio.h>#include <stdlib.h> int main(){ const unsigned int fileNum = INT_MAX;

gitinspector+jenkins 开发代码统计CI

gitinspector是一个python语言开发的开源的命令行下的代码统计工具,一般用于开发人员对自己的代码做统计. 命令行的一般用法: # gitinspector -wTHL /path/code/repository    // 自行执行看下效果,这里不再缀述 # gitinspector --format=html --timeline --localize-output -w /path/code/repository > /save/path/result.html // 生成ht

写了个代码统计工具

周末想统计下XCL-Charts到底写了多少行代码,就用Go语言写了个代码统计工具,效果还不错,统计速度也快. 就把统计报表部份今天完善了下,硬生生把很短的代码澎涨到200多行了. 除了必要的代码行数和文件总计外,增加了代码行数有300,500,1000,5000及5000以上这几个级别的代码文件个数统计功能. 同时,用户可以指定显示出代码行数大于等于某值的所有文件明细,并按从大到小顺序排列. 贴下效果: E:\XCLTools\src\crname>go run scounter.go -l=

svn代码统计

分享一个自己写的svn代码统计的脚本,不喜绕行: 统计项目每个人修改的文件的个数和行数 #!/bin/bash # 统计项目每个人修改的文件的个数和行数 Svn_pro=http://192.168.1.1/svn/project # 版本库最后修改的信息 Now_date=`date '+%F'` next_date=`date -d "next day" +%Y-%m-%d` #echo -e " 版本库最后修改信息: " #svn info http://19

GIT仓库代码统计

虽然以代码行数来衡量项目或者程序员并不是一件靠谱的事,但是从统计角度看趋势对于技术管理人员还是很有帮助的!推荐一个比较好用的git仓库代码统计工具:git_stats,它用于按git提交人.提交次数.修改文件数.代码行数.注释量在时间维度上进行统计,亦可按各文件类型进行简单的统计,非常方便.实际上,这么多功能通常都是用WEB在多个页面上显示的,git_stats也是如此,它需要你先安装好ruby以生成基础的页面,再用gem安装好git_stats,最后用git_stats一条语句即可生成展示页面

1.6 flask应用: 代码统计系统

2019-1-6 15:57:18 今天的是做了一个代码统计的demo 使用了数据库的连接池 参考连接 https://www.cnblogs.com/wupeiqi/articles/8184686.html 我觉得 flask 的连接数据库目前有点麻烦,都是用pymysql 原生的sql 语句,并不像Django的orm来的快 也许还没学到后面 这个代码统计系统其实就是上传文件和解压文件,然后读取文件有多少行代码,其实也用到了数据库的增删改查 整体思路不难,主要用到了数据库连接池的一点,在f

Linux下安装代码统计工具git_stats

(一).简介git_stats:仓库代码统计工具之一,可以按git提交人.提交次数.修改文件数.代码行数.注释量在时间维度上进行统计,亦可按各文件类型进行简单的统计,非常方便. 虽然以代码行数来衡量项目或者程序员并不是一件靠谱的事,但是从统计角度看趋势对于技术管理人员还是很有帮助的!GitStats就是这样的工具,它能生成以下统计数据,并以图表形式进行对比 常规的统计:文件总数,行数,提交量,作者数. 活跃性:每天中每小时的.每周中每天的.每周中每小时的.每年中每月的.每年的提交量. 作者数:列

python代码统计

代码统计 修改filename为文件夹or文件地址,然后统计所有python文件代码 import os import sys def count_code_lines(filename): res = os.walk(filename) count = 0 for path, _, file_list in res: for file in file_list: filename = os.path.join(path, file) if filename.endswith('py'): wi

代码统计小程序

目录 关于os.work 关于 sys.argv 代码统计程序 关于os.work import os res = os.walk(r'D:\LearnPython\program2') #for path, _, file_list in res: #print(path)#提取出根目录下所有的文件夹 #print(file_list)#提取出文件夹里所有的文件 for _,i,_ in res: print(i)#一层一层打印出所有文件夹的名字 关于 sys.argv 在cmd中运行时如果.