python对多个csv文件进行合并(表头需一致)

news2025/1/23 7:14:45

之前写过python对【多个Excel文件】中的【单个sheet】进行合并,参考:点我

之前也写过python对【多个Excel文件】中的【多个sheet】进行合并,参考:点我

今天再写一个python对多个csv格式的文件进行合并的小工具

但是大家切记,数据量别太大,如果数据量太大,即合并之后的数据量不要超过csv最大的行数,否则的话最后的保存,就会变得很慢,这时候就会需要用到数据库插入,放心数据库插入我也已近写好了,参考:点我

在这里插入图片描述

首先csv里面没有多个sheet,它只能有一个sheet,而且读取的速度也是比excel要快,所以还是很方便的。

目录结构

在这里插入图片描述

文件夹:【待合并数据源】:把你的csv文件放进去,可多个

结果会自动生成在当前文件夹

上代码

import os
import openpyxl
import pandas
import time


df = pandas.read_csv("./合并数据源/"+os.listdir("./合并数据源/")[0],dtype=str,keep_default_na="",encoding='gbk').head(0)# 将表头读取到
head = list(df)
# print(list(df))
wb2 = openpyxl.Workbook() # 创建新的EXCEL
ws = wb2.active
ws.append(head) # 写入表头

for f in os.listdir("./合并数据源/"):
    print(f)
    df = pandas.read_csv("./合并数据源/"+f,dtype=str,keep_default_na="",skiprows=1,encoding='gbk')# 读取内容,跳过表头
    for d in df.values.tolist():
        # print(d)
        ws.append(d)
wb2.save("./结果.xlsx")
print("结果生成成功!,就在当前文件夹内!")
time.sleep(2)

最后的保存代码:wb2.save(“./结果.xlsx”)

您也可以写成:wb2.save(“./结果.csv”)

您看到这,你会不会想把代码打包成EXE可执行程序,让一个不会Python的人也可以使用呢!那么打包请参考,我觉得这是最方便的打包教程:点我学会python打包exe

希望对大家有帮助,如有错误,欢迎指正

致力于办公自动化的小小程序员一枚

致力于写出清楚的博客

都看到这了,关注+点赞+收藏=不迷路!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/344262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GIS开源框架:ArcGIS文件地理数据库(GDB)解析与入库

对于GIS专业毕业的同学,想必对于ArcGIS软件不会太陌生,对于地理数据库也有一定的了解和使用经验。但是,撇开软件操作层面不谈,作为一个WebGIS/GIS开发人员,我们如何通过GIS开源框架去完成地理数据库的自动化解析和入库…

解决不同影像裁剪后栅格数据行列不一致问题

前言在处理栅格数据时,尽管用同一个矢量文件裁剪栅格数据,不同数据来源的栅格行列数也会出现不一致的情况。如果忽略或解决不好,会导致后续数据处理出现意想不到的误差或错误,尤其是利用编程实现数据处理时。因此,应当…

VisualGDB 5.6R9 FOR WINDOWS

Go cross-platform with comfort VisualGDB 是 Visual Studio 的一个非常强大的扩展,它允许您调试或调试嵌入式系统。这个程序有一个非常有吸引力的用户界面,它有许多调试或调试代码的功能。VisualGDB 还有一个向导可以帮助您调试程序,为您提…

【C++】关键字、命名空间、输入和输出、缺省参数、函数重载

C关键字(C98)命名空间产生背景命名空间定义命名空间使用输入&输出缺省参数什么叫缺省参数缺省参数分类函数重载函数重载概念C支持函数重载的原理--名字修饰C关键字(C98) C总计63个关键字,C语言32个关键字。 下面我们先看一下C有多少关键字,不对关键…

Linux 解压JAR包 查看class内容

快速解决方案 查询class相对路径:jar tf test.jar | grep "test.class"单独解压class文件:jar xvf test.jar com/test/test.class查看class文件内容:javap -c com/test/test.class 背景 服务运行后,日志打印出来发现…

【taichi】利用 taichi 编写深度学习算子 —— 以提取右上三角阵为例

本文以取 (bs, n, n) 张量的右上三角阵并展平为向量 (bs, n*(n1)//2)) 为例,展示如何用 taichi 编写深度学习算子。 如图,要把形状为 (bs,n,n)(bs,n,n)(bs,n,n) 的张量,转化为 (bs,n(n1)2)(bs,\frac{n(n1)}{2})(bs,2n(n1)​) 的向量。我们先写…

各种素材网站大全【全部倾倒,福利倒计时-JS,HTML,游戏素材,UI,图片素材等

👨‍💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 收录于专栏:解忧杂货铺 ⭐各种素材网站大全⭐ 文章目录⭐各种素材网站大全⭐🎶大家必逛的四大天王…

STM32F769BIT6微控制器STM32F769IGT6详细规格

说明STM32F7 32 位 MCUFPU 基于高性能的 ARMCortex-M7 32 位 RISC 内核,工作频率高达 216MHz。Cortex-M7 内核具有单浮点单元(SFPU)精度,支持所有 ARM 单精度数据处理指令与数据类型。同时执行全套 DSP 指令和存储保护单元(MPU)&a…

JVM02类加载子系统

1. 加载阶段 通过一个类的全限定名获取定义此类的二进制字节流 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口 加载class文件的方式 从本地系统中直接…

六、HTTP 首部字段

HTTP 首部字段 一、HTTP 报文首部 HTTP 请求报文由方法、URI、HTTP 版本、HTTP 首部字段等部分构成。 HTTP 响应报文由HTTP版本、状态码(数字和原因短语)、HTTP首部字段3部分构成。 HTTP 协议的请求和响应报文中必定包含 HTTP 首部。首部内容为客户端…

TensorRT如何工作

TensorRT如何工作 本章提供了有关 TensorRT 工作原理的更多详细信息。 文章目录TensorRT如何工作5.1. Object Lifetimes5.2. Error Handling and Logging5.3 Memory5.3.1. The Build Phase5.3.2. The Runtime Phase5.4. Threading5.5. Determinism5.1. Object Lifetimes Tenso…

ChatGPT通俗导论:从RL之PPO算法、RLHF到GPT-N、instructGPT

前言 自从我那篇BERT通俗笔记一经发布,然后就不断改、不断找人寻求反馈、不断改,其中一位朋友倪老师(之前我司NLP高级班学员现课程助教老师之一)在谬赞BERT笔记无懈可击的同时,给我建议到,“后面估计可以尝试尝试在BERT的基础上…

MACD多周期共振指标公式,日周月共振

有人问多周期MACD怎么写,编写指标的难度其实不大,主要问题是解决多周期MACD显示的问题。日线、周线、月线三个周期,每个周期都有快线DIF和慢线DEA两条线,一共6条,怎么在副图上清晰显示出来。 一、MACD多周期共振指标公…

第三章SpringBoot配置文件

文章目录什么是配置文件比如我们的QQ的配置文件配置文件作用SpringBoot配置文件的格式Spring Boot 配置文件主要分为以下两种格式properties 配置文件说明properties 基本语法properties 缺点分析yml 配置文件yml概述yml基础语法读取配置文件Value 注解使用“${}”的格式读取Co…

深度使用国产Bg-Tinkle数据库客户端—太赞了,居然还集成chatGPT AI生成SQL

软件概述数据库客户端软件是一种用于连接、管理和操作数据库的软件。它通常与数据库管理系统(DBMS)配合使用,允许用户在其上执行SQL 语句、浏览数据库中的数据、执行备份和恢复操作以及执行其他管理任务。常见的数据库客户端软件包括 MySQL W…

攻防世界-Confusion1

题目 访问题目场景 某天,Bob说:PHP是最好的语言,但是Alice不赞同。所以Alice编写了这个网站证明。在她还没有写完的时候,我发现其存在问题。(请不要使用扫描器) 然后结合图片我们知道,这个网址是python写的&#xff0…

有序表(上)

文章目录1、引入2、左旋和右旋3、AVL树3.1 AVL 树的平衡条件3.2 搜索二叉树如何删除节点3.3 AVL树的平衡性被破坏的四种类型3.4 AVL 树平衡性如何检查?如何调整失衡?3.4.1 AVL树新增节点如何检查树的平衡性?3.4.2 AVL树删除节点如何检查树的平…

学习笔记:Java 并发编程⑥_并发工具_JUC

若文章内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系博主删除。 视频链接:https://www.bilibili.com/video/av81461839配套资料:https://pan.baidu.com/s/1lSDty6-hzCWTXFYuqThRPw&am…

4. 寻找两个正序数组的中位数(数组)

文章目录题目描述方法一,重组排序方法二,调用系统函数题目描述 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (mn)) 。 示例 1: 输入&#…

最全面的SpringBoot教程(五)——整合框架

前言 本文为 最全面的SpringBoot教程(五)——整合框架 相关知识,下边将对SpringBoot整合Junit,SpringBoot整合Mybatis,SpringBoot整合Redis等进行详尽介绍~ 📌博主主页:小新要变强 的主页 &…