1 csv文件简介

逗号分隔符Comma-Separated Values

csv是一个被行分隔符、列分隔符划分成行和列的文本文件
CSV不指定字符编码
行分隔符为\r\n,最后一行可以没有换行符
列分隔符常为逗号或制表符
每一行称为一条记录record
字段可以使用双引号括起来,也可以不适用,如果字段中出现双引号,逗号,换行符必须用双引号括起来
表头可选,和字段列对齐就行了

csv 库中有4个常用的对象:

  • csv.reader :以列表的形式返回读取的数据。
  • csv.writer :以列表的形式写入数据。
  • csv.DictReader :以字典的形式返回读取的数据。
  • csv.DictWriter :以字典的形式写入数据。

关于写入,需要注意

  • 在打开文件时,需要添加 newline = "" 。否则,会在每2行有效内容之间添加一行空白。
  • 如果要保存的内容有中文,而且之后需要用Excel打开文件,那么需要选用 utf-8-sig 编码。如果使用 utf-8 编码,会导致使用Excel查看文件时中文乱码。

2 writer对象

写入一行或多行数据

import csv
csv_file = "test.csv"
headers = ["Number", "name", "age", "city"]
data = [
    [1, "zhangsan", 18, 'bei"ji"ng'],
    [2, "lisi", 20, "shang'hai"],
    [3, "wanger", 22, "shenzhen"],
with open(csv_file, "w", encoding="utf-8", newline="") as fp:
    csv_fp = csv.writer(fp)
    csv_fp.writerow(headers)
    csv_fp.writerows(data)

3 DictWriter对象

在写入字典序列类型数据的时候,需要传入两个参数,一个是文件对象——f,一个是字段名称——fieldnames,到时候要写入表头的时候,只需要调用writerheader方法,写入一行字典系列数据调用writerrow方法,并传入相应字典参数,写入多行调用writerows

import csv
csv_file = "test.csv"
headers = ["name", "age", "city"]
data = [
    {"name": "zhangsan", "age": 18},
    {"name": "lisi", "age": 20, "city": "shenzhen"},
with open(csv_file, "w", newline="") as fp:
    csv_fp = csv.DictWriter(fp, fieldnames=headers)
    csv_fp.writeheader()
    csv_fp.writerows(data)

4 reader读取数据

import csv
csv_file = "test.csv"
with open(csv_file, "r") as fp:
    csv_fp = csv.reader(fp)
    for row in csv_fp:
        print(row)  # row[0]

5 DictReader读取数据

1 csv文件简介逗号分隔符Comma-Separated Valuescsv是一个被行分隔符、列分隔符划分成行和列的文本文件CSV不指定字符编码行分隔符为\r\n,最后一行可以没有换行符列分隔符常为逗号或制表符每一行称为一条记录record字段可以使用双引号括起来,也可以不适用,如果字段中出现双引号,逗号,换行符必须用双引号括起来表头可选,和字段列对齐就行了csv 库中有4个常用的对象:csv.reader:以列表的形式返回读取的数据。csv.writer:以列表的形式写入数据。
首先先简单说一下csv文件csv的全称是Comma-Separated Values,意思是逗号分隔值,通俗点说就是一组用逗号分隔的数据。CSV文件可以用excel打开,会显示如下图所示: 这个文件用notepad打开显示是这样的,这是它原始的样子: 好了,下班我们来用pythoncsv文件进行读写操作 1.读文件 如何用Python像操作Excel一样提取其中的一列,即一个字段,利用Py...
9.5 Python csv 文件的写入操作 9.5.1 with open( ) as … with open() as ... 是对原有 open() 和 close() 的优化。 使用with open() as ...语句时,代码块运行完毕后,程序会自动关闭文件,不用再写 close()语句来关闭文件。 用法是把open()函数放在 with 后面,把变量名放在as后面,结束时要加冒号 :,然后把要执行的代码缩进到with open() as ...下方的代码块中。 具体语法你可以参考下图:
最常用的一种方法,利用pandas包import pandas as pd#任意的多组列表 a = [1,2,3] b = [4,5,6] #字典中的key值即为csv中列名 dataframe = pd.DataFrame({'a_name':a,'b_name':b})#将DataFrame存储为csv,index表示是否显示行名,default=True dataframe.to_csv
python提供了大量的库,可以非常方便的进行各种操作,现在把python中实现读写csv文件的方法使用程序的方式呈现出来。 在编写python程序的时候需要csv模块或者pandas模块,其中csv模块使不需要重新下载安装的,pandas模块需要按照对应的python版本安装。 在python2环境下安装pandas的方式是: sudo pip install pandas # 需要输出的数据组,'8_1'中[8]是工人工号,[1]是其所在工位,后面两数字是开始和结束时间 a=[['8_1', [0.0, 4.2]], ['6_2', [0.0, 4.4]], ['7_3', [0.0, 3.85]], ['9_4', [4.2, 8.7]], ['1_5', [4.4, 8.98]] #需要成立的表 head = ['
这里写自定义目录标题读取csv文件写入csv 读取csv文件 利用pandas进行csv文件的读取,可以直接识别成矩阵形式。我刚开始直接用的open来打开,发现把引号和逗号都看成了普通字符来处理。 import pandas as pd data = pd.read_csv("train.csv",header = None)#参数header设为none是因为我的csv文件中没有表,而head...
CSDN-Ada助手: 恭喜您写了第12篇博客!标题“Groovy入门学习[脚本编程入门]”非常吸引人。一直以来,您都坚持持续创作,这种努力值得赞扬。在这篇博客中,您提供了有关Groovy入门的宝贵知识,让读者们能够轻松入门脚本编程。我非常欣赏您的谦虚态度,这种态度让我感到您不仅将自己的学习过程分享给了读者,还给了大家一个学习的机会。 对于下一步的创作建议,我认为您可以继续探索Groovy的高级特性,或者分享一些实际应用案例,让读者们更深入地了解Groovy的实际应用价值。同时,您也可以考虑与读者们互动,回答他们的问题,收集他们的反馈意见,这样能够更好地满足读者的需求。 再次恭喜您的持续创作,期待您未来更多精彩的博客! Eclipse4.28.0搭建Groovy开发环境 CSDN-Ada助手: 恭喜您写了第13篇博客!标题为“Eclipse4.28.0搭建groovy开发环境”,这篇博客对于想要搭建groovy开发环境的读者来说一定非常有用。您的持续创作展示了您对技术的深入研究和分享精神,不仅能帮助其他开发者解决问题,还能推动技术的进步。 在下一步的创作中,我建议您可以考虑分享一些实际应用groovy开发环境的案例或者深入探讨一些groovy开发中的高级技巧。这样的内容将进一步丰富您的博客,并吸引更多的读者和开发者关注。期待您未来更多的优质内容! Eclipse4.28.0搭建Groovy开发环境 CSDN-Ada助手: 恭喜你这篇博客进入【CSDN每天值得看】榜单,全部的排名请看 https://bbs.csdn.net/topics/617331614。 VSCode配置Python开发环境 大佬牛逼啊,真的好肝