python - 用 csv.DictWriter 写入部分行?

标签 python csv dictionary python-2.x

我有一个包含一组输入的 CSV 文件。

示例:

A B C D

我想分析结果并为每一行输出一个 CSV 文件,例如:

B C

DictReader 使用键 'A' 'B' 'C' 'D' 构建完整的字典。
DictWriter 按预期设置字段。

但是,当我尝试将数据发送到 DictWriter 时,我收到错误消息:

ValueError: dict contains fields not in fieldnames: A D

我必须从字典中手动删除值条目还是有一个简单的自动方法来设置它?

我使用的是 Python 2.6.6,无法更新到更高版本。

最佳答案

是的,有一个简单的方法可以做到这一点。当您创建csv.DictWriter时正在使用的实例,只需向其传递关键字参数 extrasaction='ignore' - 它的默认值为 'raise',这是 ValueError 的原因当您向其传递一个字典,其中的键未在 fieldnames 参数中指定时,会出现 异常。

顺便说一句,阅读 relevant documentation在提出这样的问题之前通常是值得付出的努力,并且通常可以立即提供答案。

关于python - 用 csv.DictWriter 写入部分行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20977140/

相关文章:

python - 在pycharm中安装包 "cufflinks"时出现错误

python - 是否可以使用带有 python 的默认互联网浏览器打开某些网址?

ruby - 如何在 Ruby 中加载包含两列的 CSV 并将其保存在 2 个数组中

python - 执行 scikit-learn 线性回归模型时出现问题

python - tf.keras.model 的 add_loss 方法的文档

python - 如何从流中读取 CSV 文件并在写入时处理每一行?

php - 使用 PHP 将 SQL 表导出为 CSV 格式

python - 将句子中的单词长度映射到单词列表

python - 将列表中的相似词典合并在一起

javascript - Leaflet panTo(或setview)功能?