簡體   English   中英

使用 python 將文件讀取為 json 的另一種方法

[英]Alternate way to read a file as json using python

我有一個文件,其中包含類似於下面顯示的示例的信息。 我想知道是否有辦法使用 python 讀取此文件並將其用作 json。 我知道如何打開它並處理文本,但還有其他方法嗎?

例子:

key={{name='foo', etc..},{},{},{}}

如果您希望您的內容被視為 json,您需要有一個有效的 json 語法:

{"key":[{"name": "foo"},{},{},{}]}

然后您可以使用 json 庫將其轉換為字典:

>>> import json
>>> json.loads('{"key":[{"name": "foo"},{},{},{}]}')
{u'key': [{u'name': u'foo'}, {}, {}, {}]}

此外,如果您的文件內容無法更改為正確的 json 語法,那么您將需要針對您的特定情況開發解析器。

在搜索了幾種不同的語言后,我能夠確定數據結構是一個 Lua 容器。 我在 github.com/SirAnthony/slpp 上找到了一個當前可用的簡單 lua-python 解析器,我能夠解析(解碼)lua 數據結構。 以下是使用 slpp.py 解析 lua 容器的示例,我希望這可以幫助遇到類似問題的任何人。

>>> from slpp import slpp as lua
>>> data = lua.decode('{ array = { 65, 23, 5 }, dict = { string = "value",    array = { 3, 6, 4}, mixed = { 43, 54.3, false, string = "value", 9 } } }')
>>> print data

{'array': [65, 23, 5], 'dict': {'mixed': {0: 43, 1: 54.33, 2: False, 4: 9, 'string': 'value'}, 'array ': [3, 6, 4], '字符串': '值'}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM