千家信息网

Python遍历目录下文件、读取、千万条数据合并实例分析

发表于:2025-02-09 作者:千家信息网编辑
千家信息网最后更新 2025年02月09日,这篇文章给大家介绍Python遍历目录下文件、读取、千万条数据合并实例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、使用Python进行文件和文件夹的判断递归 :主要目的
千家信息网最后更新 2025年02月09日Python遍历目录下文件、读取、千万条数据合并实例分析

这篇文章给大家介绍Python遍历目录下文件、读取、千万条数据合并实例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

一、使用Python进行文件和文件夹的判断

  • 递归 :主要目的就是遍历文件夹和文件

  • 对文件夹和文件进行属性判断

  • 首先对文件夹进行遍历,看文件夹里有什么样的文件,读取出文件夹中的所有文件

import ospath= "./data" #路径files = os.listdir(path)#os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。for file in files:    print(file)    if os.path.isfile(path+ "/"+file):        #os.path.isfile(path) 判断路径是否为文件        print('file'+'这是一个文件')        filename,extension = os.path.splitext(file)        #分割路径,返回路径名和文件扩展名的元组        if extension == ".txt":            print(filename+'这是一个文本文件')        elif extension == ".xlsx":            print(filename+'这是一个excel文件')    if os.path.isdir(path + "/" +file):        print(file+"是一个文件夹")

读取结果:

二、使用Python完整的获取所有文件及文件夹并读取相应的文件

在我们遍历文件夹的基础上,如何实现快速读取指定文件,提高工作效率?
只需要在上述代码的基础上,导入pandas包,read_excel_我们所需要的文件即可

import pandas as pdimport os path = './data'def get_all_files(path):    print('-'*25+'函数被调用'+'-'*25)    files = os.listdir(path)#os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。    for file in files:        if os.path.isfile(path+ "/"+file):            #os.path.isfile(path) 判断路径是否为文件            print('file'+">>>>>是文件")            filename,extension = os.path.splitext(file)            #分割路径,返回路径名和文件扩展名的元组            if extension == ".txt":                print(filename+"#####是文本文件#####")                print("读取"+filename+"文件中的内容...........")                data = pd.read_table(path+'/'+file)                print(data)            elif extension == ".xlsx":                print(filename+'#####是Excel文件#####')                print("读取"+filename+"文件中的内容...........")                data = pd.read_excel(path+'/'+file)                print(data)            elif extension == ".csv":                print(filename+'#####是csv文件#####')                print("读取"+filename+"文件中的内容...........")                data = pd.read_csv(path+'/'+file)                print(data)        if os.path.isdir(path + "/" +file):            print(file+"¥¥¥¥¥¥¥是文件夹¥¥¥¥¥¥¥")            get_all_files(path+'/'+file)get_all_files(path)

读取成功!

三、使用Python合并数据

在日常工作中我们有很多表格需要处理,如何批量的将很多个文件夹中的表格合并到一起?

重点:

DataFrame.append(*other*, *ignore_index=False*, *verify_integrity=False*, *sort=None*)

append的使用

  • other: 是要添加的数据,append很不挑食,这个other可以是dataframe,dict,Seris,list等等。

  • ignore_index: 参数为True时将在数据合并后,按照0,1,2,3....的顺序重新设置索引,忽略了旧索引。

  • verify_integrity:参数为True时,如果合并的数据与原数据包含索引相同的行,将报错。

path='./project_data' ## 声明一个空的DataFrame,用来做最终的数据合并final_data = pd.DataFrame()# 声明一个空的DataFrame,用来做最终的数据合并final_data = pd.DataFrame() def get_all_files(path):    global final_data    print("-"*20 + "函数被调用" + "-"*20)    files = os.listdir(path)    for file in files:        if os.path.isfile(path + "/" +file):            print(file+">>>>>是文件")            filename,extension=os.path.splitext(file)            # 判断是不是文本文件            if extension == ".txt" :                print(filename+"#####是文本文件#####")                print("读取"+filename+"文件中的内容...........")                data = pd.read_table(path+'/' +file)                print(data)            elif extension=='.xlsx':                print(filename+"#####是Excel文件#####")                print("读取"+filename+"文件中的内容...........")                data = pd.read_excel(path+'/' +file)                print(data)            elif extension=='.csv':                print(filename + "是csv文件,是本次需要处理的文件")                # 获取文件内容                file_data = pd.read_csv(path +'/'+file)                final_data = final_data.append(file_data,ignore_index=True)                #append描述:在列表ls最后(末尾)添加一个元素object                print("《《《《合并"+filename+"文件数据》》》》")                        # 判断是不是文件夹        elif os.path.isdir(path+'/'+file):            print(file + "¥¥¥¥是文件夹¥¥¥¥¥¥")            get_all_files(path + '/' + file)get_all_files(path)print("数据合并完成")

开始合并,我们来查看一下合并后的数据:

总共1000多万条数据,如果我们用Excel的话估计要很多时间将这么多表格合并,而且会很卡。

关于Python遍历目录下文件、读取、千万条数据合并实例分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

文件 文件夹 数据 内容 路径 文本 万条 索引 表格 这是 实例 实例分析 目录 分析 函数 参数 名字 基础 扩展名 方法 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器跑数据会比较快吗 战地2042如何更改服务器 word 统计重复数据库 医疗管理软件开发 内容要求 石家庄网络安全专业就业前景 云服务器centos cms登录数据库改管理员密码 信息化软件开发设施有哪些 IP地址查询软件开发 农行软件开发中心月薪北京 数据库mac含义 网络安全用画说 CL循证医学数据库 虹口区通用软件开发密度 苏州正规的零件加工管理软件开发 北斗网络技术服务订单号 服务器是谁在管理员 西藏自治区第六届网络安全大赛 如何关闭手机无法连接服务器 2017网络安全威胁报告 刺激战场国际服服务器卡了怎么办 宜兴运营软件开发活动简介 6.2魔兽数据库 国家网络安全宣传周武安活动 哪个领域的软件开发好 计算机网络技术专升本建档立卡 软件开发系统管理 游戏自动充值软件开发 论述软件开发的过程 互联网的主人不是科技公司吗
0