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

如何在Python中将含numpy数组的列表保存为指定格式CSV

解决numpy数组列表保存为单行带逗号CSV的问题

你当前的问题出在直接将sigma1转成字符串写入文件——numpy数组的默认字符串输出自带换行,列表的字符串表示还会包含多余的括号和换行符,导致最终输出格式不符合预期。以下是两种可行的解决方案:

方案一:用csv模块规范写入(推荐)

利用csv.writer的writerow方法,自动处理逗号分隔逻辑:

import numpy as np
import csv

sigma1 = [np.array([[0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109]])]

# 取出数组并扁平化转为一维Python列表
data = sigma1[0].flatten().tolist()

with open('Data_sigma.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerow(['sigma'])  # 写入标题行
    writer.writerow(data)       # 自动用逗号分隔数据为单行

方案二:手动拼接字符串写入(适合简单场景)

直接将数组元素转成字符串后拼接成逗号分隔的单行:

import numpy as np

sigma1 = [np.array([[0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109],
       [0.02109]])]

data = sigma1[0].flatten().tolist()
data_str = ','.join(map(str, data))  # 拼接成逗号分隔的字符串

with open('Data_sigma.csv', 'w') as f:
    f.write('sigma\n')
    f.write(data_str)

两种方案最终都会生成符合预期的输出:

sigma
0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109,0.02109

内容的提问来源于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 16:09:26