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

Python3如何将float浮点数垂直写入CSV文件避免字符拆分

浮点数列表垂直写入CSV被拆分的解决办法

问题根源

csv.writer的writerows()方法要求传入「行序列的序列」结构:外层序列代表所有行,内层的每个元素代表一行的所有字段。你直接将仅包含float元素的列表传入writerows()时,方法会将每个float转为字符串后按字符遍历,每个字符作为单独一列写入,就出现了带逗号的数值被拆分为多列的情况。

修复方案

方案1:调整写入结构适配csv模块规则

把每个数值包装为单元素列表,保证每行只有一个字段,不会被拆分:

import csv
babah = [] # 你的float列表
with open('ja.csv', 'w', newline='', encoding='utf-8') as uu:
    dw = csv.writer(uu)
    # 每个数值包装为单元素列表,对应一行一列
    dw.writerows([[num] for num in babah])

如果你的数值用逗号作为小数分隔符(例如区域格式下的6,03333),可以指定CSV的列分隔符为其他字符避免冲突:

# 用分号作为列分隔符
dw = csv.writer(uu, delimiter=';')

方案2:直接逐行写入(无需csv模块)

如果你的CSV只有一列,不需要处理多列分隔规则,直接写字符串更简单:

babah = [] # 你的float列表
with open('ja.csv', 'w', encoding='utf-8') as uu:
    for num in babah:
        # 注意如果是逗号作为小数分隔符,这里直接输出对应格式的字符串即可
        uu.write(f"{num}\n")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 17:06:03