美文网首页
PythonShowMeTheCode(0007): 统计代码行

PythonShowMeTheCode(0007): 统计代码行

作者: tyrone_li | 来源:发表于2016-08-25 16:13 被阅读0次

1. 题目

第 0007 题:有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。

2. 思路

  • 首先需要遍历目录,挑选出以.py结尾的文件
  • 空行可以匹配行末尾的\n
  • 注释需要匹配起始为#或者为若干空格#的情况, 多行注释要与多行字符串相区分,本例中暂不考虑

3. 实现

# -*- coding: utf-8 -*-
import os
import os.path
import re


def count_code_lines(path):
    if path is None:
        return

    count_code = 0
    count_null = 0
    count_comment = 0
    files = [os.path.join(path, x) for x in os.listdir(path) if os.path.splitext(x)[1] == ".py"]
    for file in files:
       with open(file, encoding="utf-8") as f:
           lines = f.readlines() 
           for line in lines:
                print(line)
                count_code += 1
                if len(line) == line.count("\n"):
                    count_null += 1
                if len(re.findall(r"^\s*#", line)) > 0:
                    count_comment += 1
            if lines[-1][-1:] == "\n":
                count_null += 1

    print("BLANK: %s" % count_null)
    print("COMMENT: %s" % count_comment)
    print("CODE: %s" % (count_code - count_null - count_comment))


if __name__ == "__main__": 
   count_code_lines(".")

相关文章

  • PythonShowMeTheCode(0007): 统计代码行

    1. 题目 第 0007 题:有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分...

  • Python 练习册 0007题 (统计代码)

    第 0007 题:有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。 ...

  • PythonShowMeTheCode(0006): 统计重要词

    1. 题目 第 0006 题:你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文...

  • Qt编写自定义控件69-代码行数统计

    一、前言 代码行数统计主要用来统计项目中的所有文件的代码行数,其中包括空行、注释行、代码行,可以指定过滤拓展名,比...

  • Qt开源作品10-代码统计组件

    一、前言 代码行数统计主要用来统计项目中的所有文件的代码行数,其中包括空行、注释行、代码行,可以指定过滤拓展名,比...

  • 如何统计项目代码行数

    在Mac上计算你写了多少行代码 Linux下统计代码行数 Linux系统提供了wc命令来统计文件的行数 统计当前目...

  • 如何做好数据埋点

    一、埋点技术 代码埋点: 所谓的代码埋点就是在你需要统计数据的地方植入N行代码,统计用户的关键行为。比如你想统计首...

  • 一行代码实现UITextView的placeHolder

    前言 通过Category一行代码实现UITextView的placeHolder。搭配使用一行代码限制并统计UI...

  • python统计词频

    一、使用re库进行识别 1、代码 2、参考 python--10行代码搞定词频统计python:统计历年英语四六级...

  • MobClick - 友盟统计

    一行代码,开启统计(最简单) 完整版 导入 1 手动 2 pod 简单使用 页面 事件 统计 登录统计 2 页面统...

网友评论

      本文标题:PythonShowMeTheCode(0007): 统计代码行

      本文链接:https://www.haomeiwen.com/subject/kbjnsttx.html