python怎么读取csv文件

python怎么读取csv文件,第1张

在python中读取csv文件,可以利用csv.reader读csv文件,然后返回一个可迭代的对象csv_read,就可以直接从csv_read中取数据。

Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

CSV 表示 “Comma-Separated Values (逗号分隔的值) ” , CSV 文件是简化的电子表格,实际为纯文本文件。

一个 CSV 文件,格式是这样的:

因为 CSV 文件中的每个单元格都是以逗号分割,所以也许有人会对每行文本调用 split() 方法,来解析 CSV 文件。但 CSV 文件也有自己的转义字符,通过转义字符,允许逗号和其他字符作为值的一部分,但单纯使用 split() 方法不能处理这些转义字符。因为这些潜在的缺陷,所以建议总是使用 csv 模块来读写 CSV 文件。

csv 模块是 Python 自带的,所以可以直接导入。

要使用 csv 模块从 CSV 文件中读取数据,我们需要创建一个 Reader 对象。 通过 Reader 对象,我们可以迭代遍历 CSV 文件中的每一行内容。

运行结果:

要用 csv 模块读取 CSV 文件,首先先使用 open() 函数打开它 ,就像打开任何其他文本文件一样。然后将它传递给 csv .reader() 函数。 这个函数将返回一个 Reader 对象。注意,csv .reader() 函数不接受文件名作为入参。

要访问 Reader 对象中的值,最直接的方法,就是利用 list() 将它转换成一个普通 Python 列表。它实际为一个包含列表的列表,用于表示二维数据。

我们还可以使用表达式 data [ row ][ col ] 来访问 CSV 中特定行和列的值。其中, row 是 data 中一个列表的下标, col 是该列表中,我们想访问的项的下标:

运行结果:

运行结果:

Writer 对象可以让我们把数据写入 CSV 文件。

运行结果:

在 Windows 上,需要为 open() 函数的 newline 关键字参数传入一个空字符串。如果没有设置 newline 参数, output.csv 中的行距将变为两倍,如下图所示。

如果写入的内容包含逗号,那么 csv 模块会自动加上双引号,对其进行转义,如下例所示。

运行结果:

我们也可以利用 delimiter ,来制作 TSV 文件,TSV 是Tab-separated values的缩写,即以制表符作为分隔符的文件;利用 lineterminator 参数来设定行距。

运行结果:

这里利用 lineterminator='\n\n\n' 将行与行之间的字符变为三个换行符,效果就是实现了 3 倍行距。

python保存csv文件到桌面:

1、虽然python中有内置模块能够 *** 作csv文件,不过pandas这个第三方库在处理速度和代码编写方面都是优于内置模块了,同时也需要将os模块导入进来判断一下保存csv文件的路径是否存在或者有同名文件。

2、模块导入完成之后要用变量来保存csv文件路径了,然后定义两个空集合,作用是保存列数据,再使用listdir()方法将文件路径里面的所有文件和文件夹都获取到并用for循环迭代。

3、在for循环代码块里面向一个列表对象内添加文件名,然后定义一个参数并赋值为aa,然后将这个变量添加到另一个列表中,循环迭代完毕之后这两个列表内就有数据了。

4、调用zip()函数将这两个列表合并在一起并且使用list()方法再次转为列表,然后用pandas库中的DataFrame()方法将data参数表示的数据源设置为该列表对象,并指定两个列名,最后用to_csv()方法将其保存起来即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11433740.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存