怎么用python打开csv文件_Python文本处理之csv-csv文件怎么打开[通俗易懂]

怎么用python打开csv文件_Python文本处理之csv-csv文件怎么打开[通俗易懂]csv英文全称是Comma-SeparatedValue,字面翻译逗号分隔值,是一种常见的文本格式文档,可用Excel打开,也可用常见的文本编辑器打开。csv文件经常用于在电子表格软件和纯文本之间交互数据。Python内置了csv模块,可以很方便的操作csv文件。下面介绍两种读写csv文件的方法。一、通过reader和writer函数先看一段简单的示例代码:text包含两个列表元素,首先把这两行…

大家好,又见面了,我是你们的朋友全栈君。

csv英文全称是Comma-Separated Value,字面翻译逗号分隔值,是一种常见的文本格式文档,可用Excel打开,也可用常见的文本编辑器打开。csv文件经常用于在电子表格软件和纯文本之间交互数据。

Python内置了csv模块,可以很方便的操作csv文件。下面介绍两种读写csv文件的方法。

一、通过reader和writer函数

先看一段简单的示例代码:

19332V1O-0.jpg

text包含两个列表元素,首先把这两行写入csv文件,然后读取打印。写入时,先获取文件对象f,然后通过csv模块的writer函数得到writer对象,writer对象提供writerow方法将text逐行写入文件;读取时,通过reader函数得到一个可迭代对象,然后打印文件每行。从打印结果看到,text的数字100已经转换为字符串了。

代码中的newline参数很重要,在写入时,如果没有指定newline=”,则会出现空行,因为写入时在’\r\n’前加入了’\r’。结果如下图:

19332U621-1.jpg

默认情况下,csv分隔符为逗号,那么当字符串中也包含逗号会怎样呢?比如text中的’Python,小黑’,从上图可以看到它正确的显示在一个单元格里了,怎么实现的?我们用记事本打开csv文件,如下图,原来是在包含逗号的字符串首尾添加了双引号,以此避免逗号混乱。

19332U237-2.jpg

事实上,这里的分隔符逗号和引用符双引号都可以自定义,下面的代码中将分隔符设为冒号,引用符设为%:

19332W623-3.jpg

用记事本查看csv文件,结果如下:

19332U3b-4.jpg

二、通过DictReader和DictWriter类

csv模块还提供了DictReader类和DictWriter类,用于按字典方式读取或写入csv文件。看下图示例代码:

19332T934-5.jpg

上图代码中,在写文件时,首先实例化DictWriter类,将列表keys作为列的标题,然后,writeheader写入标题,writerows写入一个字典,字典的键即是列的标题。用Excel打开csv文件,如下图:

19332SE3-6.jpg

读取时,首先实例化DictReader类,得到一个可迭代对象,然后根据字典键值对打印信息。利用DictReader读取csv文件时,自动把第一行各单元格的值作为字典的键。

两种读写csv文件的方法都很方便,根据实际情况选用,或者根据心情选用……

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162468.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • bgr2gray_tarjan算法

    bgr2gray_tarjan算法概述项目中用到yuvNV12转BGR24的算法,总结了几种常用算法代码如下。直接转换//NV12转BGRvoidNV12_T_BGR(unsignedintwidth,unsignedintheight,unsignedchar*yuyv,unsignedchar*bgr){constintnv_start=wi…

    2025年12月8日
    4
  • 【愚公系列】2022年02月 wireshark系列-数据抓包分析之DHCP协议

    【愚公系列】2022年02月 wireshark系列-数据抓包分析之DHCP协议实验步骤一获取DHCP数据包在windows平台上获取DHCP数据包在windows平台上,可以使用两种简单的方法实现,其原理一样。(1)在cmd上,使用ipconfig命令来获取。执行完上述命令后,将释放当前使用的地址信息。重新获取地址信息,执行命令如下执行完上面的命令后,将重新获取地址信息。在获取地址时,将会经过上面讲述的DHCP的4个阶段。这样,我们就能获取到DHCP数据包了。(2)通过禁用和启用网卡获取DHCP数据包在windows平台上,也可以通过禁用和启用网卡获取DHCP数

    2022年5月23日
    45
  • php 死链查询,seo网站死链解决方法 死链查询检测工具

    php 死链查询,seo网站死链解决方法 死链查询检测工具死链是指服务器的地址已经改变了.无法找到当前地址位置,包括协议死链和内容死链两种形式。死链出现的原因有网站服务器设置错误;某文件夹名称修改,路径错误链接变成死链等。我们都知道死链对seo排名的危害是非常大的。死链对网站的危害一、有可能会让搜索引擎降权二、用户体验较差死链检测方法:Xenu死链查询工具今天教大家如何使用Xenu死链接检测工具对网站死链接(什么是网站死链)进行处理,有图有真相,轻松四步…

    2022年7月23日
    17
  • 华为电脑如何投屏到电视linux,华为手机如何投屏到电脑上?手把手教你,无线投屏怎么做…「建议收藏」

    原标题:华为手机如何投屏到电脑上?手把手教你,无线投屏怎么做经常宅在家里想要看电影,手机屏幕太小影响观看体验,或者需要投屏到电脑上,方便办公。这个时候应该怎么办?如果你使用的是华为手机,可以直接投屏到电视、电脑上,这里就来手把手教你如何操作。1、打开功能华为手机开启无线投屏的方式有2种:第1种是在手机设置内,选择更多链接,进入之后就可以开启无线投屏的功能;第2种是直接下拉通知栏,然后开启手机投…

    2022年4月9日
    120
  • mysql时区重启后失效_mysql时区问题

    mysql时区重启后失效_mysql时区问题背景插入 timestamp 类型与 datetime 类型数据比预计结果早 14 小时原因如果说相差 8 小时不够让人惊讶 那相差 13 小时可能会让很多人摸不着头脑 出现这个问题的原因是 JDBC 与 MySQL 对 CST 时区协商不一致 因为 CST 时区是一个很混乱的时区 有四种含义 美国中部时间 CentralStand USA UTC 05 00 或 UTC 06 00 澳大利亚中部时间 Cen

    2025年9月29日
    4
  • lr模型训练_GBDT模型

    lr模型训练_GBDT模型分类模型本质上是线性回归模型优化目标J(θ)=∑−yilog(h(θTxi))−(1−yi)log(1−h(θTxi))J(\theta)=\sum-y_ilog(h(\theta^Tx_i))-(1-y_i)log(1-h(\theta^Tx_i))J(θ)=∑−yi​log(h(θTxi​))−(1−yi​)log(1−h(θTxi​)),最小化其中h(θTx)=11+e−θ…

    2022年8月31日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号