加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python CSV DictReader / Writer问题

发布时间:2020-12-20 13:05:33 所属栏目:Python 来源:网络整理
导读:我试图从CSV文件中提取一堆行并将它们写入另一行,但我遇到了一些问题. import csvf = open("my_csv_file.csv","r")r = csv.DictReader(f,delimiter=',')fieldnames = r.fieldnamestarget = open("united.csv",'w')w = csv.DictWriter(united,fieldnames=fiel
我试图从CSV文件中提取一堆行并将它们写入另一行,但我遇到了一些问题.

import csv

f = open("my_csv_file.csv","r")
r = csv.DictReader(f,delimiter=',')
fieldnames = r.fieldnames

target = open("united.csv",'w')
w = csv.DictWriter(united,fieldnames=fieldnames)

while True:
try:
    row = r.next()
    if r.line_num <= 2: #first two rows don't matter
        continue
    else:
        w.writerow(row)

except StopIteration:
    break

f.close()
target.close()

运行此,我收到以下错误:

Traceback (most recent call last):
File "unify.py",line 16,in <module>
    w.writerow(row)
File "C:Program FilesPython25libcsv.py",line 12
    return self.writer.writerow(self._dict_to_list(row
File "C:Program FilesPython25libcsv.py",line 12
    if k not in self.fieldnames:
TypeError: argument of type 'NoneType' is not iterable

不完全确定我错了什么.

解决方法

我也不知道,但是因为你所做的只是将行从一个文件复制到另一个文件,你为什么要烦扰csv呢?为什么不是这样的:

f = open("my_csv_file.csv","r")
target = open("united.csv",'w')

f.readline()
f.readline()
for line in f:
    target.write(line)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读