Python如何读写CSV文件中的数据

iCode小讲堂第一期

Python如何读写CSV文件中的数据


    CSV(Comma-Separated Values,CSV)逗号分隔值,是用逗号分隔数据项(也称为字段)的数据交换格式,CSV主要应用于电子表格和数据库之间的数据交换。

    Python提供了csv模块用于实现CSV文件的读(reader函数)/写(writer函数)。

reader()函数

    语法格式如下:

reader(csvfile, dialect='excel', **fmtparams)

    dialect参数是方言,方言提供了一组预定好的格式化参数。

    dialect的实际参数是csv.Dialect的子类,csv.Dialect的子类主要有csv.excel类,定义Excel生成的CSV文件的常用属性,它的方言名称是'excel';csv.excel_tab类,定义Excel生成的Tab(水平制表符)分隔文件的常用属性,它的方言名称是'excel-tab';csv.unix_dialect类,定义在UNIX系统上生成的CSV文件的常用属性,即使用'\n'作为行终止符,而Windows下使用'\r\n'作为行终止符,它的方言名称是'unix'。

    fmtparams参数可以提供单个格式化参数。

示例代码

import csv

#注意,csv文件的编码是gbk

with open('books.csv','r',encoding='gbk') as rf:

reader=csv.reader(rf,dialect=csv.excel) #此处可以简写为dialect='excel',由于是默认值,也可以省略

for row in reader:

  print('|'.join(row))

writer()函数

    语法格式如下:

writer(csvfile, dialect='excel', **fmtparams)

示例代码

import csv

with open('books.csv','r',encoding='gbk') as rf:

reader=csv.reader(rf,dialect=csv.excel)

with open('books3.csv','w',newline='',encoding='gbk') as wf: #由于write函数本身会追加换行,open函数本身也默认自带换行,所以使用newline=''使每行数据不进行换行

  writer=csv.writer(wf,dialect='excel',delimiter='+')  #delimiter是分隔符,默认分隔符使用逗号

  for row in reader:

  print(row)

  print('|'.join(row))

  writer.writerow(row)


更多计算机相关内容请关注公众号【iCode编程工作室】

你可能感兴趣的:(Python如何读写CSV文件中的数据)