【发布时间】:2018-02-17 16:41:30
【问题描述】:
我有这个错误,我不知道为什么我得到它。 我按照我的 Python 手册中的步骤操作,我得到了这个。如果它们具有奇怪的字符,我正在尝试清理第 8 列和第 9 列上的文件。 如果有人可以帮助我,请指教。
错误出现在代码行:for row in csv.reader(f):
请在下面找到我的代码:
import csv
file = '/Users/cohen/Desktop/sdn-2.csv'
newstring = "null"
newinteger = int(0)
with open(file, 'r+') as f:
for row in csv.reader(f):
if row[7] =="-0-":
row[7] = newinteger
if row[8] == "-0-":
row[8] = newinteger
f.close()
***稍后编辑我如上所述更改了代码,但没有做任何事情是没有用0替换-0-
【问题讨论】:
-
open(file, 'w')你打开文件是为了写,而不是读。 -
即使您修复了
open错误,您仍然有一个整体逻辑问题——分配给一行并不将该更改写回文件。跨度> -
最好读取数据,根据需要清理csv行,将清理后的行写入新文件,然后删除原始文件并将新文件重命名为原始名称。跨度>