python学习-统计指定路径下py文件的行数

一、总体思想

  • 找到指定路径下的所有文件及文件夹
  • 遍历该路径下的所有文件及文件夹,判断是文件还是文件夹
  • 判断是文件之后,再判断文件后缀是否为py文件
  • 对找到的py文件,按行读出
  • 去除空行和注释行,统计代码行数

二、所用方法

  • os.listdir(path)
os.listdir(path)
功能:列出指定路径下的所有文件和子文件夹的名称
path:用于指定路径
返回值:返回指定文件夹中包含的文件或文件夹的名字列表
  • os.path.isfile(path)
os.path.isfile(path)
功能:判断指定路径是否为文件
path:用于指定文件路径
返回值:TRUE/FALSE
  • os.path.splitext(path)
os.path.splitext(path)
功能:将文件分割为文件名和后缀名
path:用于指定文件路径
返回值:元组(文件名,文件后缀)

三、整体代码

# #######总体思想:
# #######1.找到指定路径下的所有文件及文件夹
# #######2.遍历该路径下的所有文件及文件夹,判断是文件还是文件夹
# #######3.判断是文件之后,再判断文件后缀是否为py文件
# #######4.对找到的py文件,按行读出
# #######5.去除空行和注释行,统计代码行数

import os
# 1.指定路径
path = r'C:\Users\Administrator\PycharmProjects\pythonProject'

# 2.os.listdir(path)
# ######功能:列出指定路径下的所有文件和子文件夹的名称######
# ######path:用于指定路径##############################
# ######返回值:返回指定文件夹中包含的文件或文件夹的名字列表#
file_list = os.listdir(path)
print(file_list)

for file in file_list:
    new_path = path + '\\' + file
    print(new_path)
    count = 0
    # 3.os.path.isfile(path)
    # #######功能:判断指定路径是否为文件#############
    # #######path:用于指定文件路径######################
    # #######返回值:TRUE/FALSE##############
    if os.path.isfile(new_path):
        # 4.os.path.splitext(path)
        # #######功能:将文件分割为文件名和后缀名#############
        # #######path:用于指定文件路径######################
        # #######返回值:元组(文件名,文件后缀)##############
        if os.path.splitext(new_path)[1] == '.py':
            with open(new_path,'r',encoding='utf-8') as fp:
                word_list = fp.readlines()
            for word in word_list:
                word = word.strip()
                if word != '':
                    if word[0] != '#':
                        count = count + 1
            print(count)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值