如何在CSV中表示列表?

  • 本文关键字:表示 列表 CSV csv
  • 更新时间 :
  • 英文 :


在CSV中表示列表/数组值的标准方法是什么?例如,给定JSON中的源数据:

[
{
'name': 'Harry',
'subjects': ['math', 'english', 'history']
}
]

我对CSV表示的猜测是:

name,subjects
Harry,["math","english","history"]

但是它不能被正确解析(使用标准的Python CSV解析器)。

一个选项是选择一个您知道永远不会在数据中出现的分隔符,尽管这几乎总是一种技巧,除非确实必要,否则应该避免使用。例如:

name,subject
Harry,math|english|history

当然,您必须手动处理分割字符串并将其转换回列表。现有的CSV解析器不应该支持这个,因为这个概念在CSV中根本没有意义。

当然,这不能很好地泛化——将来当你需要存储2D列表或字典时,或者你意识到确实需要

分隔符时,会发生什么?这里的根本问题是CSV是表格格式,而JSON是分层格式。而不是试图"挤压"。为了适应根本不兼容的格式,您应该将数据规范化为表格表示。下面是一个示例:

name,subject
Harry,math
Harry,english
Harry,history

相关内容

  • 没有找到相关文章

最新更新