Python讀寫CSV文件

csv模組方法

csv.reader

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

csv.writer

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

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

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

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()函數返回的對象)公共方法

csvreader.next()     csvreader.line_num      csvreader.fieldnames

寫對象(DictWriter實例和writer()函數返回的對象)公共方法

csvwriter.writerow(row)     csvwriter.writerows(rows)      csvwriter.writeheader()

Tags: