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

Python实现将两个完整列表写入CSV文件的不同列

嗨,我来帮你搞定这个CSV导出的问题!你想要的是把整个列表作为单个单元格的内容,但之前的两种方法都没get到这个点——csv模块用zip会把两个列表的对应元素配对成多行,pandas直接转列表又把每个列表当成了一行数据,所以结果都不符合预期。

下面给你两种正确的实现方式:

方法一:使用csv模块

直接把两个列表转成字符串,作为一行的两个单元格写入,同时加上表头:

import csv

a = [1,3,5,6,7,12]
b = [23,45,67,67]

with open('sample_dataset.csv', 'w', encoding='utf-16', newline='') as outfile:
    writer = csv.writer(outfile)
    # 先写入表头行
    writer.writerow(['Item', 'Quantity'])
    # 将两个列表转为字符串,作为同一行的两个单元格
    writer.writerow([str(a), str(b)])

方法二:使用pandas

通过字典构造DataFrame,让每个列表对应一列的单个单元格:

import pandas as pd

a = [1,3,5,6,7,12]
b = [23,45,67,67]

# 用字典定义列名和对应的值(每个值是包含列表的单元素列表,确保整个列表作为一个单元格)
my_df = pd.DataFrame({
    'Item': [a],
    'Quantity': [b]
})

# 导出CSV,去掉索引
my_df.to_csv('sample_dataset.csv', index=False)

导出后的CSV内容会和你预期的一致:

Item,Quantity
[1, 3, 5, 6, 7, 12],[23, 45, 67, 67]

如果不想让列表里有空格,可以在转字符串时处理一下,比如用str(a).replace(' ', '')代替str(a)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 04:02:15