I am trying to write mean,var,std
to a .txt
file but I am getting an error.
import csv
mean = 50.00001075309713
var = 4.120598729047652
std = 2.0299257939756448
with open('Radius.txt', 'w ') as f:
writer = csv.writer(f)
print("Mean =",mean)
print("var =",var)
print("std =",std)
writer.writerow(mean)
writer.writerow(var)
writer.writerow(std)
The error is
in <module>
writer.writerow(mean)
Error: iterable expected, not float
The expected output is
mean = 50.00001075309713
var = 4.120598729047652
std = 2.0299257939756448
CodePudding user response:
Change:
writer.writerow(mean)
writer.writerow(var)
writer.writerow(std)
to:
writer.writerow((mean, var, std))
The requirement for an iterable means whatever you pass to writerow must be something which can be looped through. The fix here is to put your values into a tuple, the inner bracketed values. It works because tuples can be looped through.