python高频函数—CSV() 读写

news2024/11/16 18:05:19

Part.1

csv.reader()函数

csv.reader(csvfile, dialect='excel', **fmtparams)

返回一个 reader 对象,该对象将逐行遍历 csvfile。

一个简短的用法示例:

>>> import csv>>> with open('eggs.csv', newline='') as csvfile:...     spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')...     for row in spamreader:...         print(', '.join(row))Spam, Spam, Spam, Spam, Spam, Baked BeansSpam, Lovely Spam, Wonderful Spam

Part.2

csv.writer()函数

csv.writer(csvfile, dialect='excel', **fmtparams)

返回一个 writer 对象,该对象负责将用户的数据在给定的文件类对象上转换为带分隔符的字符串。

一个简短的用法示例:

import csvwith open('eggs.csv', 'w', newline='') as csvfile:    spamwriter = csv.writer(csvfile, delimiter=' ',                            quotechar='|', quoting=csv.QUOTE_MINIMAL)    spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])    spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

Part.3

csv.DictReader()函数

csv.DictReader(f, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)

创建一个对象,该对象在操作上类似于常规 reader,但是将每行中的信息映射到一个 dict,该 dict 的键由 fieldnames 可选参数给出。 fieldnames 参数是一个 sequence。如果省略 fieldnames,则文件 f 第一行中的值将用作字段名。无论字段名是如何确定的,字典都将保留其原始顺序。

一个简短的用法示例:

>>> import csv>>> with open('names.csv', newline='') as csvfile:...     reader = csv.DictReader(csvfile)...     for row in reader:...         print(row['first_name'], row['last_name'])...Eric IdleJohn Cleese
>>> print(row){'first_name': 'John', 'last_name': 'Cleese'}

Part.4

csv.DictWriter()函数

csv.DictWriter(f, fieldnames, restval='', extrasaction='raise', dialect='excel', *args, **kwds)

创建一个对象,该对象在操作上类似常规 writer,但会将字典映射到输出行。fieldnames 参数是由键组成的 序列,它指定字典中值的顺序,这些值会按指定顺序传递给 writerow() 方法并写入文件 f。注意,与 DictReader 类不同,DictWriter 类的 fieldnames 参数不是可选参数。

一个简短的用法示例:

import csv
with open('names.csv', 'w', newline='') as csvfile:    fieldnames = ['first_name', 'last_name']    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
    writer.writeheader()    writer.writerow({'first_name': 'Baked', 'last_name': 'Beans'})    writer.writerow({'first_name': 'Lovely', 'last_name': 'Spam'})    writer.writerow({'first_name': 'Wonderful', 'last_name': 'Spam'})
传入的是字典,keys值是表头

更多内容:

https://mp.weixin.qq.com/s/sKqzVUZlq3uiqhhW_XIejgicon-default.png?t=N5K3https://mp.weixin.qq.com/s/sKqzVUZlq3uiqhhW_XIejg

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

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

相关文章

ctrl键的作用

crtl是control的英文缩写,是控制的意思,长和其他键组合起来使用,达到快捷操作的功能。 例如:ctrlX是剪切的功能,ctrlP是打印设置,ctrlZ是撤销,ctrlF是查找,ctrlY是恢复的功能等。 …

在野外使用无线电台的必知事项

电台属于无线通信设备的一种,主要用于发送和接收无线电信号,实现语音、数据和图像等信息的传输。它一般是由发射机和接收机两部分组成,能够在不同的频段和频率上进行通信。通过无线电波传输信息,为人们在不同场景中提供可靠的远距…

11.Rocket解决分布式事务

highlight: arduino-light 两阶段提交协议 原文链接:https://blog.csdn.net/fenglibing/article/details/92417739 两阶段提交协议(Two-phase Commit,2PC)经常被用来实现分布式事务。一般分为协调器TC和若干事务执行者两种角色,这里的事务执行…

【Vue3】学习笔记-ref函数、reactive函数

ref函数、reactive函数 Ref函数reactive函数 Ref函数 作用:定义一个响应式的数据语法:const xxxref(initValue) 创建一个包含响应式数据的引用对象(reference对象,简称ref对象)。JS中操作数据:xxx.value模板中读取数据:不需要.va…

地理数据处理-地理空间表的导入与查询

前言 现在大部分数据库都支持地理空间的数据存储,可以方便的与GIS平台调用,比如Geoserver、ArcGis, 但是如果使用不规范的空间表去发布图层预览可能会出现各种问题,比如坐标系错误,无法聚焦。 本文将举例最常见的SQLServer和Post…

Godot引擎 4.0 文档 - 手册 - 2D

本文为Google Translate英译中结果,DrGraph在此基础上加了一些校正。英文原版页面: 2D — Godot Engine (stable) documentation in English 画布层 视口和画布项目 CanvasItem是所有 2D 节点的基础,无论是常规的 2D 节点,例如…

深入理解微分、积分电路!搞懂PID控制原理就这么简单!

很多朋友觉得PID是遥不可及,很神秘,很高大上的一种控制,对其控制原理也很模糊,只知晓概念性的层面,知其然不知其所以然,那么本期从另类视角来探究微分、积分电路的本质,意在帮助理解PID的控制原…

智慧排水监测系统有什么作用?

随着城市化进程的加速,城市排水系统的压力不断增加。然而,当前城市排水系统面临着管理效率低下、水资源浪费和洪涝灾害等问题。为了解决这些问题,智慧排水监测系统逐渐成为了新的解决方案。本文将为大家详细介绍智慧排水监测系统的作用以及智…

微软公布量子超级计算机路线图

光子盒研究院 6月22日,微软公布了三个重要的量子计算公告。首先,公司宣布它已经实现了通往量子超级计算机的六步路线图的第一个里程碑,并发表了一篇经同行评议的研究论文来证明这一成就。 这家科技巨头的第二项公告是将其人工智能&#xff08…

堆——“数据结构与算法”

各位CSDN的uu们你们好呀,今天小雅兰的内容仍旧是二叉树,此刻分享的内容是一种特殊的二叉树,也就是堆了。下面,让我们进入堆的世界吧!!! typedef int HeapDataType; typedef struct Heap {HeapDa…

MES系统是什么?它如何帮助企业提高生产效率?

随着制造业的发展,越来越多的企业开始使用全面的制造执行系统(MES)来管理其生产过程。那么,MES系统到底是什么呢?它又是如何帮助企业提高生产效率的呢?本文将为大家详细介绍。 一、MES系统的概念 MES系统是…

Leetcode 剑指 Offer II 032. 有效的变位词

题目难度: 简单 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定两个字符串 s 和 t ,编写一个函数来判断它们是不…

基于物联网技术的智能配电室综合监控系统设计与产品选型

摘要:配电室是电力系统的重要基础设施,可以保障供配电系统的安全稳定运行。但是,配电室数量多、部署分散、管理复杂,人工现场巡检管理方式费时费工、错误率高,如果发生故障隐患,往往无法及时发现。针对配电…

Sparse Fuse Dense: 向高质量的深度补全3D检测迈进

点云的稀疏性:在远距离和遮挡区域提供的信息较差,导致难以生成精确的3D边界框。 出现了多模态融合。 图像和点云的不同表示方式使得它们难以融合,导致性能不佳。 论文提出了一种新颖的多模态框架SFD(Sparse Fuse Dense&#xf…

二层交换机工作原理与MAC地址介绍

目录 MAC地址介绍 MAC地址的组成 MAC地址分类 MAC地址的作用 二层交换机介绍 MAC地址表的定义 MAC地址表项类型 二层交换机对数据帧的处理动作 MAC地址介绍 MAC地址(Media Access Control Address),直译为媒体存取控制位地址 MAC地址的组成 MA…

华为OD机试真题(Java),图片整理(100%通过+复盘思路)

一、题目描述 Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过代码解决。 Lily使用的图片使用字符"A"到"Z"、“a"…

JMeter 环境配置

目录 前言: 一、 JDK安装 二、 安装JMeter 三、 安装插件 前言: JMeter是一款功能强大的性能测试工具,用于模拟多种负载条件下的应用程序行为,环境配置是jmeter学习的第一步,每次换电脑就得重新配置,为…

Spark RDD dataframe嘿嘿

RDD(Resilient Distributed Datasets)可扩展的弹性分布式数据集,RDD是spark最基本的数据抽象,RDD表示一个只读、分区且不变的数据集合,是一种分布式的内存抽象,与分布式共享内存(Distributed Sh…

面试题:希尔排序是一种稳定排序吗?

面试题:希尔排序是一种稳定排序吗? 对于算法的稳定性,有这样一个记忆技巧,不稳定排序是"快些选队",对应于快速排序/希尔排序/选择排序/堆排序。希尔排序也名列其中,因此也是一种不稳定排序&…

CODESYS 数组类型变量(ARRAY)使用介绍

博途PLC数组类型变量使用介绍请参看下面文章博客: 博途1200/1500PLC上升沿下降沿指令编程应用技巧(bool数组)_博途上升沿指令_RXXW_Dor的博客-CSDN博客博途PLC的下降沿和上升沿指令,在控制系统编程时经常会使用。和SMARTS7-200有所不同,遵循IEC-6113标准提供的上升沿下降沿…