python 对 csv文件的读写
csv(Comma Separated Value,即逗号分隔值),文件以纯文本形式存储表格数据(数字和文本)。该文件可以用excel打开,并自动将每个逗号隔开的数据作为一列在excel中显示。
python有一个csv内置模块,模块中有两个主要函数:csv.reader(),csv.writer()分别实现对csv文件的读写。import csv就可以调用。
举例:
读取文件:
import csv
myData = [] with open("somefile.csv") as fs: data = csv.reader(fs) for line in data: myData.append(line)
使用 with... as ... 格式避免了读取过后关闭文件的步骤。如:
import csv fs=open("myFile.csv","rb") #以rb的方式打开csv文件 myread=csv.reader(c) for line in myread: print (line[0],line[1]) c.close()
写文件:
import csv
with open(r'MyData\myTest.csv','w') as fs: myWrite = csv.writer(fs) for i in range(10): myWrite.writerow([0+i,1+i,2+i])
先使用csv的open函数以w(写入)方式打开,如果该csv文件不存在 则会在相对目录中创建一个csv文件。
然后实例化一个写入对象writer,最后是使用writerow函数写入一条记录。
(值得注意的是:open(r'myFile.csv','w')
这里目的是:先在本地新建一个文件夹MyData,然后把myFile.csv文件放到该文件夹中,但是直接运行出错;
需要先手动创建文件夹MyData,然后open函数会在其中自动创建myFile.csv文件。
当然:open(r'myFile.csv','w')是没有问题的。
一般做法:
import csv c=open("url.csv","w") mywriter=csv.writer(c) mywriter.writerow(['name','address','city','state']) c.close()