我有一个包含一组输入的 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/