You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python写入mean/var/std到txt文件报错:期望可迭代对象而非float

解决写入mean/var/std到TXT文件的报错问题

报错原因

csv.writer.writerow() 要求传入可迭代对象(如列表、元组)来生成CSV格式行数据,但你直接传入了float类型的mean/var/std,不符合参数要求,因此触发iterable expected, not float错误。

另外,你的需求是输出mean = 数值这类纯文本行,使用csv模块属于冗余操作,直接用文件的write()方法更适配。

修复方案(推荐)

直接写入格式化后的字符串,代码如下:

mean = 50.00001075309713
var = 4.120598729047652
std = 2.0299257939756448

with open('Radius.txt', 'w+') as f:
    f.write(f"mean = {mean}\n")
    f.write(f"var = {var}\n")
    f.write(f"std = {std}\n")

执行后,Radius.txt的内容将完全符合你的期望:

mean = 50.00001075309713
var = 4.120598729047652
std = 2.0299257939756448

若坚持使用csv模块的写法

如果一定要用csv模块,需将每个文本行包装成可迭代对象(如单元素列表),代码如下:

import csv
mean = 50.00001075309713
var = 4.120598729047652
std = 2.0299257939756448

with open('Radius.txt', 'w+') as f: 
    writer = csv.writer(f)
    writer.writerow([f"mean = {mean}"])
    writer.writerow([f"var = {var}"])
    writer.writerow([f"std = {std}"])

内容的提问来源于stack exchange,提问作者user19862793

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 02:21:15