开发者社区> 问答> 正文

Python:将清单清单写入CSV

在我的python脚本中,我具有一个具有以下结构的列表:

['00:00', 'abc', '2', 'xyz']
['00:01', 'cde', '3', 'sda']

等等。我想将此列表写入csv文件,其方式是每个元素都在单独的行中,一个元素中的每个字符串在单独的列中。所以我想在csv文件中得到以下结果:

     A     |     B    |     C    |     D
1  00:00   |    abc   |     2    |    xyz     
2  00:01   |    xyz   |     3    |    sda

目前,我有这样的代码:

with open('test1.csv',mode='w',encoding='UTF-8') as result_file:
    wr = csv.writer(result_file, dialect='excel')
    for x in data:
        wr.writerow(x)

我得到的结果是列表中的每个元素都被写入了列A,所以看起来像这样:

             A               |       
1  '00:00','abc','2','xyz'   |

如何实现将每个字符串拆分为csv文件中的单独列?

  • 编辑

如果我从前三个答案中运行代码,则会得到相同的结果(除分度符外):

但是我的想法是在A列中获取00:00,在B列中获取-6,依此类推。

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 15:34:31 395 0
1 条回答
写回答
取消 提交回答
  • “熊猫”方法怎么样?漂亮又简单...

    import pandas as pd
    
    data = [['00:00', 'abc', '2', 'xyz'], ['00:01', 'cde', '3', 'sda']] 
    cols = ['A', 'B', 'C', 'D']
    
    # Load data into a DataFrame.
    df = pd.DataFrame(data, columns=cols)
    # Write the CSV.
    df.to_csv('output.csv', sep='|', index=False)
    

    根据文档,您可以使用sep参数更改分隔符。

    [编辑]输出:

    从控制台显示的output.csv的内容:

    user@host ~/Desktop/so
    $ cat output.csv
    A|B|C|D
    00:00|abc|2|xyz
    00:01|cde|3|sda
    

    回答来源:stackoverflow

    2020-03-24 15:34:39
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载