一、获取单个文件的行数
本例展示获取单个txt文件中的行数:
#统计单个文件的行数
cnt = 0;
#open后面的参数是你想要获得文件行数的那个文件(目标文件)
with open("labels/718_5m_cloudy_other_0805.txt",'rb') as f:
for line in f:
cnt = cnt+1
print(cnt)
二、获取文件夹中所有文件的行数
本例展示获取labels下的所有txt文件内容的总行数:
import os
total_line_num = 0 # 总行数
#分别表示 root 、root下的文件夹名 、root下的文件名 (括号里传递的参数是base_path)
for base_path, folder_list, file_list in os.walk('D:\count_lines'):
for file_name in file_list:
file_path = os.path.join(base_path, file_name)
count = 0
with open(file_path, 'rb') as f:
for line in f:
count += 1
total_line_num += count
print('总行数:', total_line_num-13-6) #减去count.py和test.py文件内容的行数
三、关于os.walk()函数
- 函数解释
os.walk()是一种遍历目录数的函数,机理类似深度优先搜索和层次搜索策略,其返回的是root dirs files
- 返回值解释
root
:代表当前遍历的目录路径,string类型dirs
:代表root路径下的所有子目录名称,list类型,列表中的每个元素是string类型,代表子目录名称。files
:代表root路径下的所有子文件名称,返回list类型,列表中的每个元素是string类型,代表子文件名称。
import os
home_path = "/test" #最好传相对地址
for (root, dirs, files) in os.walk(home_path):
print(root)
print(dirs)
print(files)
print("===============================================")
目录结构:
文章来源:https://www.toymoban.com/news/detail-488684.html
输出结果:文章来源地址https://www.toymoban.com/news/detail-488684.html
/test
['A', 'B', 'C']
['a.txt', 'b.txt', 'os.walk().py']
===============================================
/test\A
[]
['A_1.txt', 'A_2.txt', 'A_3.txt']
===============================================
/test\B
[]
['B_1.txt', 'B_2.txt', 'B_3.txt']
===============================================
/test\C
[]
[]
===============================================
到了这里,关于如何用python获取单个文件 或 文件夹中所有文件的行数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!