慕運(yùn)維8079593
2019-07-08 16:46:31
從文件中讀取JSON?我有點(diǎn)頭疼,只是因?yàn)橐粋€(gè)簡(jiǎn)單的樣子,簡(jiǎn)單的陳述是把一些錯(cuò)誤扔到了我的臉上。我有一個(gè)名為string s.json的json文件,如下所示:"strings": [{"-name": "city", "#text": "City"}, {"-name": "phone", "#text": "Phone"}, ...,
{"-name": "address", "#text": "Address"}]我想讀一下JSON文件,只是暫時(shí)的。我有一些我發(fā)現(xiàn)的陳述,但它不起作用:import jsonfrom pprint import pprintwith open('strings.json') as json_data:
d = json.load(json_data)
json_data.close()
pprint(d)控制臺(tái)上顯示的錯(cuò)誤如下:Traceback (most recent call last):
File "/home/.../android/values/manipulate_json.py", line 5, in <module>
d = json.loads(json_data)
File "/usr/lib/python2.7/json/__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
TypeError: expected string or buffer
[Finished in 0.1s with exit code 1]編輯變身json.loads到j(luò)son.load得到了這個(gè):Traceback (most recent call last):
File "/home/.../android/values/manipulate_json.py", line 5, in <module>
d = json.load(json_data)
File "/usr/lib/python2.7/json/__init__.py", line 278, in load
**kw)
File "/usr/lib/python2.7/json/__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 369, in decode
raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 829 column 1 - line 829 column 2 (char 18476 - 18477)
[Finished in 0.1s with exit code 1]
3 回答

叮當(dāng)貓咪
TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
json.load()
import jsonwith open('strings.json') as f: d = json.load(f) print(d)
json.loads()

梵蒂岡之花
TA貢獻(xiàn)1900條經(jīng)驗(yàn) 獲得超5個(gè)贊
import jsonwith open("test.json") as json_file: json_data = json.load(json_file) print(json_data)
{ "a": [1,3,"asdf",true], "b": { "Hello": "world" }}

至尊寶的傳說(shuō)
TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊
從文件中讀取并轉(zhuǎn)換為JSON
import json# Considering "json_list.json" is a json filewith open('json_list.json') as fd: json_data = json.load(fd)
import json json_data = json.load(open('json_list.json'))
字符串到JSON
import json json_data = json.loads('{"name" : "myName", "age":24}')
添加回答
舉報(bào)
0/150
提交
取消