跳转到主要内容

Python 3 csv模块的后向移植

项目描述

Latest Version https://travis-ci.org/ryanhiebert/backports.csv.svg?branch=master Join the chat at https://gitter.im/ryanhiebert/backports.csv Requirements Status

Python 2中csv模块的API与Python 3中的csv模块的API有很大差异。这主要是因为Python 2中的str与Python 3中的str之间的差异。

Python 3版本的意义更为有用,因为它们原生支持Unicode,而Python 2的csv不支持。

安装

pip install backports.csv

使用

首先确保你正确地开始了你的文件

from backports import csv

然后小心处理你的文件以处理编码。如果你正在处理一个类似于二进制的文件对象,io.TextIOWrapper 可以非常有帮助。如果你正在处理文件,你可以直接使用 io.open 而不是Python 2的内置函数 open,它的工作方式与Python 3的内置函数 open 类似。

from backports import csv
import io

def read_csv(filename):
    with io.open(filename, newline='', encoding='utf-8') as f:
        for row in csv.reader(f):
            yield row

def write_csv(filename, rows):
    with io.open(filename, 'w', newline='', encoding='utf-8') as f:
        writer = csv.writer(f)
        for row in rows:
            writer.writerow(row)

注意:始终指定 newline=''} 是安全的,因为csv模块会自己处理(通用的)换行符。

1.0.7 (2019-03-10)

  • 将测试添加到 MANIFEST.in。 - 感谢 @jayvdb 提供的拉取请求

1.0.6 (2018-05-22)

  • 传递读取器错误消息。(#28)这应该有助于使错误更加透明。- 感谢@mpeteuil提交的pull请求

1.0.5 (2017-05-29)

  • 修复README示例中的错误。(#22)- 感谢@tantale提交的错误报告

  • 当使用QUOTE_NONE时,允许quotechar为None。(#23)- 感谢@thanatos提交的错误报告

1.0.4 (2017-02-17)

  • 从writerow返回写入值。(#20)- 感谢@therg

1.0.3 (2017-01-23)

  • 添加LICENSE文件。(#18)

1.0.2 (2016-09-15)

  • 当使用QUOTE_NONNUMERIC时,避免引用任何数值类型。- 感谢@torfsen提交的错误报告

1.0.1 (2016-02-11)

  • 为无效方言提供更好的错误消息。- 感谢@kengruven提交的错误报告

1.0 (2016-02-11)

  • 初始发布

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

backports.csv-1.0.7.tar.gz (20.8 kB 查看散列)

上传时间:

构建分发

backports.csv-1.0.7-py2.py3-none-any.whl (12.9 kB 查看散列)

上传时间: Python 2 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面