python中按照文件夹中文件的排列顺序读取文件内容

在处理数据的过程中,文件夹下的文件有时候按照一定的规律命名,按照要求,有时需要将文件夹中的文件按照原始的顺序读取:假设文件目录如图所示:

按照:

base_path = r'E:\download\generator\result'
files = os.listdir(base_path)

返回的files列表会打乱文件的顺序,结果是不固定的。

需要对文件列表进行排序才可以:

files.sort(key=lambda x: int(x.split('.')[0]))

这样就可以按照文件的排列顺序读取文件内容了。

完整代码:

# -*- coding: utf-8 -*-
import os
base_path = r'E:\download\generator\result'
files = os.listdir(base_path)
files.sort(key=lambda x: int(x.split('.')[0]))
for path in files:
    full_path = os.path.join(base_path, path)
    # print(full_path)
    with open(full_path) as fp:
        data = fp.read()
        print(data)


--------------------------------------------------------------end--------------------------------------------------------------------------------

 

  • 23
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
要按排列顺序读取一个文件夹内多个Excel文件,可以使用Python的os库来获取文件夹的所有文件,并使用pandas库读取每个Excel文件。以下是一个示例代码: ```python import os import pandas as pd # 文件夹路径 folder_path = 'folder_path' # 获取文件夹内所有文件 files = os.listdir(folder_path) # 对文件列表进行排序 sorted_files = sorted(files) # 遍历排序后的文件列表 for file in sorted_files: # 确保只处理Excel文件 if file.endswith('.xlsx') or file.endswith('.xls'): # 构建完整的文件路径 file_path = os.path.join(folder_path, file) # 读取Excel文件 data = pd.read_excel(file_path) # 按顺序读取数据 for index, row in data.iterrows(): # 处理每一行的数据 # 可以使用row['column_name']来访问每个单元格的值 print(row['column_name']) ``` 在代码,首先指定文件夹路径`folder_path`,然后使用`os.listdir()`函数获取文件夹内的所有文件,并将其存储在`files`列表。接下来,使用`sorted()`函数对文件列表进行排序,得到排列顺序后的文件列表`sorted_files`。 然后,通过遍历`sorted_files`列表,对每个文件进行操作。在循环,使用条件语句确保只处理Excel文件(以`.xlsx`或`.xls`结尾)。然后,使用`os.path.join()`函数构建完整的文件路径。接着,使用`pd.read_excel()`函数读取Excel文件,并将数据存储在名为`data`的DataFrame对象。 最后,使用`iterrows()`方法遍历DataFrame的每一行,并按顺序处理数据。可以通过`row['column_name']`来访问每个单元格的值,其`column_name`是Excel列的名称。 这样,你就可以按排列顺序读取文件夹内多个Excel文件了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值