[英]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.