嗨,这可能对你有帮助。
第一个问题
改变with open("./files/forest.csv", 'wb') as myfile:
open_file_object = csv.writer( open("./files/forest.csv", 'wb') )
到with open("./files/forest.csv", 'w+') as myfile:
open_file_object = csv.writer( open("./files/forest.csv", 'w+') )
第二个问题:
完全一样,除了换成r+
如果这不起作用,你可以随时使用它来删除所有空白行。for row in csv:
if row or any(row) or any(field.strip() for field in row):
myfile.writerow(row)
还有,一点教训。”rb“代表读取字节,本质上认为它只是读取一个整数。我不确定你的csv的内容是什么;但是,csv中必须有字符串。
这将有助于今后的参考。
参数模式指向以下列之一开头的字符串
序列(这些序列后面可能有其他字符):``r'' Open text file for reading. The stream is positioned at the
beginning of the file.
``r+'' Open for reading and writing. The stream is positioned at the
beginning of the file.
``w'' Truncate file to zero length or create text file for writing.
The stream is positioned at the beginning of the file.
``w+'' Open for reading and writing. The file is created if it does not
exist, otherwise it is truncated. The stream is positioned at
the beginning of the file.
``a'' Open for writing. The file is created if it does not exist. The
stream is positioned at the end of the file. Subsequent writes
to the file will always end up at the then current end of file,
irrespective of any intervening fseek(3) or similar.
``a+'' Open for reading and writing. The file is created if it does not
exist. The stream is positioned at the end of the file. Subse-
quent writes to the file will always end up at the then current
end of file, irrespective of any intervening fseek(3) or similar.