Python 练习小工具,统计代码行数

Python 练习小工具,统计代码行数。Java, C, Object-C, Swift

# -*- coding: utf-8 -*-
#Python 练习小工具,统计Java 代码行数
import os
#统计文件行数
def countLines(fileName):
  count = 0
  with open(fileName, 'r') as f:
    while True:
      line = f.readline()
      if line:
        if len(line)>1:
          count += 1
      else:
        break
  #print ">>>%s \tLines %d"%(os.path.split(fileName)[1], count)
  return count

#遍历
def traverse(fileName):
  if os.path.exists(fileName) == 'false':
    print "File is not exist"
    return 0
  if os.path.isfile(fileName):
    type = os.path.splitext(fileName)[1]
    if  type == '.java' or type == ".c" or type == ".m" or type == ".h" or type == ".swift":
      return countLines(fileName)
    return 0
  if os.path.isdir(fileName):
    count = 0
    for ddd in os.listdir(fileName):
      count += traverse(os.path.join(fileName, ddd))
    return count
  print "ERROR BUG %s"%fileName
  return 0

#Main
abspath = os.path.abspath('.')
count = traverse(abspath)
#count = countLines("hello.txt")
print "\n"
print "*********************************************"
print ">> abspath = %s"%(abspath)
print ">> The number of rows is %d"%(count)
print "*********************************************"
print "                   Game Over                  "
print "*********************************************"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,246评论 4 61
  • From cnblogs yangecnu / cnblogs 有心故我在 / wikipedia 2-3 tre...
    _Nullptr阅读 2,876评论 0 2
  • 自我声明 react是Facebook这家公司对当时市场上的MVC开发框架不满意而自己调动团队去书写的框架。而我学...
    语目阅读 178评论 0 0
  • 生命这条路太长,幸好我曾遇见你。 可能每个十七八岁的姑娘心里都曾住着一个光芒万丈的少年吧。或许是桀骜不驯,大胆叛逆...
    珊珊哟阅读 495评论 0 1