23recfv 发表于 2015-10-21 13:06:04

Python读写CSV文件

csv模块方法
csv.reader

1
2
3
4
5
import csv   
with open('temp.csv','rb') as f:   
    reader = csv.reader(f)   
    for row in reader:   
      print row




csv.writer

1
2
3
4
5
import csv   
with open('temp.csv','wb') as f:   
    writer = csv.writer(f)   
    writer.writerow(['a','b','c'])   
    writer.writerow(['d','e','f'])





csv模块类
csv.DictReader

1
2
3
4
5
import csv   
with open('temp.csv') as f:   
    reader = csv.DictReader(f)   
    for row in reader   
      print(row['first_name'],row['last_name'])




csv.DictWriter

1
2
3
4
5
6
7
8
import csv
with open('temp.csv','w') as f:
    fieldnames = ['first_name','last_name']
    writer = csv.DictWriter(f, fieldnames=fieldnames)
   
    writer.writeheader()
    writer.writerow({'first_name':'ryan', 'last_name':'xu'})
    writer.writerow({'first_name':'koko', 'last_name':'xu'})




csv模块异常
csv.Error

1
2
3
4
5
6
7
8
9
import csv, sys   
filename = 'some.csv'   
with open(filename, 'rb') as f:   
    reader = csv.reader(f)   
    try:   
      for row in reader:   
            print row   
    except csv.Error as e:   
      sys.exit('file %s, line %d: %s' % (filename, reader.line_num, e))





读对象(DictReader实例和reader()函数返回的对象)公共方法

1
2
3
csvreader.next()   
csvreader.line_num   
csvreader.fieldnames




写对象(DictWriter实例和writer()函数返回的对象)公共方法

1
2
3
csvwriter.writerow(row)   
csvwriter.writerows(rows)   
csvwriter.writeheader()






页: [1]
查看完整版本: Python读写CSV文件