本文转载自:
https://www.cnblogs.com/unnameable/p/7366437.html
https://www.cnblogs.com/zle1992/p/5986317.html
csv文件的读取:
前期工作:在定义的py文件里边创建一个excel文件,并另存为csv文件,放入三行数据,我这里是姓名+年龄(可以自己随意写)
首先我们要在python环境里导入csv板块(测试小白的我喜欢用pycharm)
然后我们定义一个csv文件的变量csv_file,然后通过open对此文件进行打开,打开模式采用‘r’(read:读模式),这里不懂的各位小白白可以百度下文件的访问模式
如下图所示:
图中打印出来的csv_file只是一个对象的模型(如图中的1),我们需要对这个模型进行遍历打印,通过打印我们可以清晰的看到我们打印的数据
csv文件的写入:
通过上面我们可以对csv的文件进行了读取,各位小白们有没有感觉很简单呢(我当时乐开花了),下面我们就讲一下csv的读取
在开始前我们要定义两组数据,进行下面的写入
stu1 = ['marry',26] stu2 = ['bob',23]
1.写入的第一步同样也是打开文件,因为我们是要写入,所以我们用的模式就是 'a' 模式,追加内容,至于"newline="就是说因为我们的csv文件的类型,如果不加这个东西,当我们写入东西的时候,就会出现空行,这个大家可以尝试着不加试试一下,也可以"老乌龟的屁股"(规定)
out = open('Stu_csv.csv','a', newline='')
2.下面我们定义一个变量进行写入,将刚才的文件变量传进来,dialect就是定义一下文件的类型,我们定义为excel类型
csv_write = csv.writer(out,dialect='excel')
3.然后进行数据的写入啦,啦啦啦,终于要结束了,写入的方法是writerow,通过写入模式对象,调用方法进行写入
csv_write.writerow(stu1) csv_write.writerow(stu2)
4.最后各位小白可以用你们最熟悉的一句语法进行漂亮的收尾,66666
print ("write over")
具体的代码如下:
import csv #csv 写入 stu1 = ['marry',26] stu2 = ['bob',23] #打开文件,追加a out = open('Stu_csv.csv','a', newline='') #设定写入模式 csv_write = csv.writer(out,dialect='excel') #写入具体内容 csv_write.writerow(stu1) csv_write.writerow(stu2) print ("write over") 执行结果:
2.
python自带有csv模块,如果想了解更详细的内容,可以参考官方文档
一、读操作
不知道为什么,要是打开文件时不使用'b'模式,就会有隔行出现,所以,在windows中想要正常操作csv文件,就加上b模式。delimiter来指定reader各个域之间的分隔符。
def readData(): with open('csvFile.csv','rb') as fobj: csvFileReader = csv.reader(fobj,delimiter='-'); header = next(csvFileReader); print header for row in csvFileReader: print row;
二、写操作
这些就是简单的csv文件的读写操作了,想要了解更详细的文档,请参考官方文档