我有一个.CSV,我试图从中读取单个行,从行中的各个值进行计算,然后将计算得到的值附加到该行的末尾。我的方法是迭代每一行,调用值,从该值进行计算,然后追加到该行。这是当前的mu代码(有一次我设法将所有的计算结果附加到csv行的最后一行,这很有希望但不正确,现在我得到一个“'_csv.writer'对象不可迭代”类型错误):
import csv
import math
f = open('planet_data.csv','a+')
writer = csv.writer(f)
for row in writer: <- loction of error
if row[1] == 'Planet_Radius': <- To bypass csv header values
pass
else:
a = int(row[1])
b = str((4/3)*math.pi*(a**3))
row.writerow(b)
print row
任何帮助都会受到赞赏,我猜测迭代器问题解决后代码仍然需要工作。此外,我猜测有一些软件包/模块可以简化这一点,但本练习的目的是学习如何手动循环csvs。
答案 0 :(得分:0)
我不认为您可以在同一个文件中写入更改, 但你可以用这种方式创建一个新的:
pg_terminate_backend
我希望这会有所帮助!