CSV文件在Python中的处理方式

2023-11-06

一、使用Python基本语法读写CSV文件

使用基本语法读取CSV文件中的数据大概思路是:获取文件对象,读取表头,按逗号分隔符拆分表头字段,使用for循环语句获取表体记录数据,拆分后再次写入另一张CSV文件中(如果要将数据写入xls*格式的文件中,请参考前期公众号文章),步骤如下:

Step 1:导入必要模块,获取输入输出文件路径。

import sys

infile = sys.argv[1]

outfile = sys.argv[2]

Step 2:使用open内置函数获取文件对象。

with open(infile, “r”, newline=‘’) as fr, open(outfile, “w”,
newline=‘’) as fw:

Step 3:使用文件对象的readline方法或者迭代器的next方法读取表头(文件对象是一个迭代器对象,支持迭代协议),使用str.split方法对表头进行拆分(注意,要使用strip函数去掉尾部换行符)。

header = next(fr)

header = header.strip()

header_list = header.split(“,”)

Step 4:既然表头已经查分好了,我们需要将表头写入文件对象中(注意尾部需要添加一个换行符哦)。

fw.write(“,”.join(map(str, header_list)) + “\n”)

当然,上面的代码也可以这么写:

print(*header_list, sep=“,”, file=fw)

Step 5:使用for循环读取表体数据,并将其拆分成列表写入到文件中。

for row in fr:
row = row.strip()
row_list = row.split(“,”)
fw.write(“,”.join(map(str, header_list)) + “\n”)

以上步骤完成后,在命令提示符中输入:

python csvrw.py inputfile.csv outputfile.csv

输入输出csv文件名称以及脚本名称请自定义,以上只是举例说明。

以上代码如下:
使用pandas读写CSV文件
在这里插入图片描述

二、使用pandas读写CSV文件

pandas库是一个强大的数据处理和数据分析库,使用pandas处理csv文件更简单,其步骤如下:

Step 1:首先,导入必要模块,获取输入输出文件路径。

import sys

import pandas as pd

infile = sys.argv[1]

outfile = sys.argv[2]

Step 2:使用pandas的read_csv方法将数据存储到一个DataFrame对象中。

dataframe = pd.read_csv(infile)

Step 3:然后使用DataFrame的to_csv方法将其输出到另一张csv表中。

dataframe.to_csv(outfile, index=False)

以上步骤完成后,在命令提示符中输入相应命令即可(请参照<二>)

代码如下:
在这里插入图片描述

作为一个IT的过来人,我分享的都是一些自己的学习经历和干货。

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。在这里插入图片描述

六、Python练习题

检查学习结果。
在这里插入图片描述

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSV文件在Python中的处理方式 的相关文章

随机推荐

  • Vue初始化在HBuilderx中快速搭建

    HBuilderx快速新建VUE项目 一 安装HBuilderx开发工具 官网 HBuilderx HBuilderXH是HTML的第一个字母 Builder是builder X是HBuilder的下一个版本 我们也被称为HX HBuild
  • 01.minio基本介绍搭建使用

    MinIO 是一款基于 Go 语言的高性能 可扩展 云原生支持 操作简单 开源的分布式对象存储产品 官网 https min io 特点 高性能 作为高性能对象存储 在标准硬件条件下它能达到55GB s的读 35GG s的写速率 可扩容 不
  • 随机生成6位随机数(字母+数字)

    package com test public class test public static void main String args String randomcode 用字符数组的方式随机 String model 0123456
  • 人生应该接受的教育

    以下三段话 或许会让你的人生发生一些变化 如果有心改变 一切都不晚 一 比尔 盖茨告诉我们 1 社会充满不公平现象 你先不要想去改造它 只能先适应它 因为你管不了它 2 世界不会在意你的自尊 人们看的只是你的成就 在你没有成就以前 切勿过分
  • openssl基本原理及生成证书

    openssl基本原理及生成证书 openssl基本原理及生成证书 1 基本原理 2 生成证书 一 生成CA证书 1 创建私钥 2 创建证书请求 3 自签署证书 4 将证书导出成浏览器支持的 p12格式 二 生成server证书 1 创建私
  • 6套粒子群算法(内含matlab代码)

    粒子群算法 1 粒子群算法简介 一 粒子群算法的历史 粒子群算法源于复杂适应系统 Complex Adaptive System CAS CAS理论于1994年正式提出 CAS中的成员称为主体 比如研究鸟群系统 每个鸟在这个系统中就称为主体
  • 【C#】如何比较两个对象是否相等(重写Equals方法)

    问题 写单元测试时 需要对比两个对象是否相等 如果使用Assert AreEqual mockclass1 class1 永远无法通过 原因 这里使用了object默认的Equals方法 必须要引用同一个对象 才会返回true 默认的Equ
  • 485通讯与MODBUS的区别与联系

    最近做智能检测的项目 设备 串口之间的通讯比较多 一会儿485 一会儿modbus RTU 有点晕了 这里重新梳理一下RS485 485通讯协议 ModBus通讯协议 Modbus Rtu通讯这几个点的联系和区别 先说RS485吧 RS48
  • C++面试之const和static的联系和区别

    C 中的静态成员和静态函数的参考之前写的博客 C 中的静态成员和静态函数 Littlehero 121的博客 CSDN博客 C 中的全局变量和普通全局变量参考之前写的博客 全局变量 静态全局变量 静态局部变量和普通局部变量的区别 Littl
  • 003 Leaflet 第三个demo 地图上的面积测量

    一 使用到的文件 leaflet src js Leaflet Editable js leaflet measure path js leaflet css leaflet measure path css 面积测量区别于拉框测量面积而言
  • 125-Linux_守护进程

    文章目录 1 什么是Linux守护进程 2 如何创建Linux守护进程 切换当前工作目录到根目录 这样可以避免守护进程在其它目录中的文件被占用 使用fork 函数创建子进程 并在父进程中退出 在子进程中调用setsid 函数创建新的会话组
  • VScode配置PHP运行环境

    VS code配置PHP环境 第一步 配置了PHP环境 如果没有配置php环境的请见上篇个文章 点我 第二步 你需要有VS code 第三步 配置settings json 我们按下shift ctrl p然后搜索settings json
  • 百度联盟百青藤app流量变现

    app流量变现
  • 静态数据成员和静态成员函数(static)

    目录 一 关于静态成员 二 静态数据成员和普通数据成员的共同点 三 为什么要使用静态数据成员 四 关于静态数据成员的初始化 五 静态成员的访问方式 六 静态成员函数 1 与静态数据成员不同 静态成员函数的作用不是为了对象之间的沟通 而是为了
  • Chinchilla Scaling Laws

    Chinchilla Scaling Laws是一组经验原则 用于指导神经网络模型中参数数量的选择和所需训练数据的数量 以实现最佳性能 这些原则表明 为了使模型达到最佳性能 参数数量应与训练集的大小成正比 而训练集的大小应与参数数量的平方成
  • Daniel and Spring Cleaning【数位DP】【Codeforces 1245 F】

    Codeforces Round 597 Div 2 F 这道题化简一下就是让我们求有上下限的2进制数中有几对满足每一位的相 值不为1的对数 那么 首先看到这个1e9就会让人想到数位DP 然后接着就是如何去求的这样一个问题 我们不如将上下限
  • Java8的stream().map()用法

    在Java编码过程中可能会遇到这个场景 遍历一个列表 对列表中的属性进行转换 赋值等操作形成我们想要的一个新列表 通常我们的常规思路就是直接使用for循环 在Java8引入lambda表达式后我们可以使用stream流链式处理的方式 形成新
  • Android之R文件

    首先了解什么是R文件 当 Android 应用程序被编译 会自动生成一个 R 类 其中包含了所有 res 目录下资源 包括布局文件layout 图片文件drawable等 具体的内容如下所示 public final class R 全是以
  • 力扣题---单值二叉树

    题目链接 单值二叉树 先来看下题目与例题 如果二叉树每个节点都具有相同的值 那么该二叉树就是单值二叉树 只有给定的树是单值二叉树时 才返回 true 否则返回 false 示例 1 输入 1 1 1 1 1 null 1 输出 true 示
  • CSV文件在Python中的处理方式

    一 使用Python基本语法读写CSV文件 使用基本语法读取CSV文件中的数据大概思路是 获取文件对象 读取表头 按逗号分隔符拆分表头字段 使用for循环语句获取表体记录数据 拆分后再次写入另一张CSV文件中 如果要将数据写入xls 格式的