【问题标题】:Write multiple lists of different length to a csv in python each having different columnnames [duplicate]将多个不同长度的列表写入python中的csv,每个列表都有不同的列名[重复]
【发布时间】:2019-10-25 03:57:13
【问题描述】:

我有两个列表:

A = ['Apple', 'Dog']
B = ['Cat', 'OWL', 'PEACOCK']

I want output to a csv as :

A

Apple
Dog

B

Cat
OWL
PEACOCK

如何将这两个列表输出到 csv。我尝试使用 zip 但它是 仅适用于相同大小的列表

【问题讨论】:

    标签: python list csv file-io file-handling


    【解决方案1】:

    您可以将空白项添加到列表A,然后使用pandas 将其导出。 Pandas 使用称为 DataFrame 的数据结构,但列必须等长。输出的 .csv 文件不会显示空白数据单元格。

    import pandas as pd
    A = ['Apple', 'Dog']
    B = ['Cat', 'OWL', 'PEACOCK']
    df1 = pd.DataFrame({'A':A})
    df2 = pd.DataFrame({'B':B})
    pd.concat([df1,df2],axis=1).to_csv('myfile.csv', index = False)
    

    【讨论】:

    • 当我要处理多个列表时,这不是一个好的解决方案
    • 当然可以。您只需为您的用例扩展它。不要期望 StackOverflow 会为您完成所有工作。您还可以查看包 xlsxwritercsv,但 pandas 对于 csv/dataframe 操作更加通用。
    • 当我有数百个列表并为每个列表附加空白项时,这不是检查每个列表长度的优化方法。不过谢谢你的建议。
    • 将熊猫导入为 pd A = ['Apple', 'Dog'] B = ['Cat', 'OWL', 'PEACOCK'] df1 = pd.DataFrame({'A':A }) df2 = pd.DataFrame({'B':B}) pd.concat([df1,df2],axis=1).to_csv('myfile.csv', index = False)
    猜你喜欢
    • 1970-01-01
    • 2018-05-27
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多