Python--CSV文件处理

本文详细介绍了CSV文件的基本概念及Python中使用csv模块进行读写的技巧。包括如何配置不同的分隔符、引号处理方式等,同时提供了示例代码帮助理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CSV( Comma Separated Values),是最常见的从电子表格和数据库中导入和导出的数据类型。

csv.reader(csvfile, dialect='excel', **fmtparams)
参数中的csvfile可以是任何支持迭代的对象。文件和列表对象都支持,如果是文件对象,必须有使用‘b'标志打开。
class excel:
delimiter = ' , '
quotechar = ' " '
escapechar = None
doublequote = True
skipinitialspace = False
lineterminator = '\r\n'
quoting = QUOTE_MINIMAL
设置:
* quotechar - 引号字符,默认是双引号‘ “ ’。
* delimiter - 字段分割符,默认是逗号' , '。
* skipinitialspace - 如何紧跟在分隔符后面的空白符。默认是False,意味着空白符作为下一个字 段的一部分
* lineterminator - 分割行的字符串
* quoting - 控制写的时候引号应该怎么生成。可以是下面的这些模块常量:
csv.QUOTE_MINIMAL : 仅当必要的时候,如一个字段中有包含引号或者分隔符。
csv.QUOTE_ALL : 所有的字段都将被引号包裹。
csv.QUOTE_NONMUMERIC : 那些不被解析成整形或者浮点型的字段都将被引号包裹。
csv.QUOTE_NONE : 任何情况下,字段都不被引号包裹。
* escapechar - 当quoting被设置为QUOTE_NONE时,用来避免分隔符的字符。
* doublequote - 处理字段中的引号,当设置为Ture时,读取的时候,两个引号当作为一个,写入的时候,字段中的一个引号写成两个。

例子:
简单的读取CSV文件
import csv
with open('some.csv', 'rb') as f:
    reader = csv.reader(f)
    for row in reader:
        print row

以冒号作为分隔符读取:
import csv
with open('passwd', 'rb') as f:
    reader = csv.reader(f, delimiter=':', quoting=csv.QUOTE_NONE)
    for row in reader:
        print row

简单的写入例子:
import csv
with open('some.csv', 'wb') as f:
    writer = csv.writer(f)
    writer.writerows(someiterable)

注册一个新的方言:
import csv
csv.register_dialect('unixpwd', delimiter=':', quoting=csv.QUOTE_NONE)
with open('passwd', 'rb') as f:
    reader = csv.reader(f, 'unixpwd')



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值