繁体   English   中英

使用 Python 将格式奇怪的文件转换为 csv

[英]Converting weirdly formatted file to csv using Python

我想使用 Python 将格式奇怪的文件转换为 csv。

该文件如下所示:

[
{"kind": 342, "type": b, "pattern": {"circle": ["Oo0"]}, "number": 5}
...
...
...
]

信息本身在上下文中是有意义的。 (我保证!)

无论如何,有几行像上面那样,为了正确分析数据,我需要先将其格式化为 csv。

我希望嵌套对象只是模式的值。

我知道 pandas 可以转换为 csv,但首先它需要能够理解我的文件,对吗?

无论如何,任何帮助将不胜感激!

由于您只是转换一次,因此这种奇怪的方式可能就足够了:

exec('x.append({"kind": 342, "type": b, "pattern": {"circle": ["Oo0"]}, "number": 5})')

也许是一个奇怪的解决方案,它会在“类型”上引发错误,因为 b 未定义。 但是如果你知道你将拥有什么类型,你可以定义它们,比如b = "b"

for type in "abcd":
 exec(f'{type} = "{type}"').

然后对 csv 进行任何您需要的写入操作。

我最终使用了 JSON 转换器,因为无论如何文件本身都非常接近 JSON 文件。

如果不是因为文件深处某些行的问题,评论中的建议很可能会起作用。 那里的嵌套对象格式错误。

[..
{... "pattern":{"circle":["OO"]}, "direction":"west":[42]}
...]

缺少一些{}

所以问题不是真正的格式,而是一个有问题的文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM