python中如何把数据写入csv文件之中
csv文件一般是用来存储各种统计信息,也可以用来存储数据库中的表结构。今天我们来看一下,在python中,是怎么将数据写入到csv文件吧。
操作方法
- 01
首先创建一个csv_scripts.py文件来保存我们的脚本,如下面图中所示:
- 02
然后编辑脚本内容如下: import csv # 打开一个csv文件对象 with open('test.csv','w', newline='') as csvfile: # 创建一个写入对象 spamwriter = csv.writer(csvfile, delimiter=' ', quotechar='|', quoting=csv.QUOTE_MINIMAL) #向csv文件里写入第一行 spamwriter.writerow(['spam']*5 + ['Baked Beans']) # 向csv文件里写入第二行 spamwriter.writerow(['spam', 'Lovely Spam', 'Wonderful Spam'])
- 03
脚本内容编辑好以后,对应的解释内容都在#号注释后面,通过导入csv模块,然后打开一个test.csv文件对象,然后调用csv模块里的writer函数,返回一个writer对象 spamwriter,然后这个spamwriter对象就有了可以写入csv文件的能力。给它的writerow函数传递值,然后就会写入到对应的csv文件中。 但是在执行脚本之前,我们必须先创建一个csv文件,在linux上命令是: touch test.csv 如下面图中所示,因为如果不提前创建文件,会报找不到这个文件的错误,如下面第二张图中所示:
- 04
由此可见,open函数打开文件时,文件不存在的时候不会自动创建新的文件。test.csv文件创建完毕以后,就可以执行这个脚本了,命令是是: python csv_scritps.py 执行完毕后,打开csv文件,如下面所示:
- 05
从打开的test.csv文件中我们可以看到,第一次写入的值里['spam']*5是单独一列,['Baked Beans']是一列,而第二次写入的值里一个三个元素的列表是写了三列,这就说明,写入的时候,如果想对应值都是对其的,最好提前将他拼成指定长度的列表,而不能在writerow函数里拼接。
- 06
这里还可以出现的错误是,在open函数里没有带上'w'参数,代码如下面图中所示,这个时候如果直接执行脚本的话,会报错,not writeable,可见默认情况打开的csv文件对象是没有写权限的。
- 07
根据上面遇到的错误信息和格式信息,我们新写了个脚本,如下所示:脚本中定义了一行表头字段,然后定义了一个三个子列表的列表,子列表中是和表头长度相同的元素。
- 08
然后删除旧的test.csv文件,命令是: rm test.csv 然后执行脚本,命令是: python csv_scripts.py 在查看执行后的结果,可以看到,数据就排列的相对整齐了。以上就是python将数据写入到csv的全部内容。