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()