用Python解析JSON值
我有下面这样的JSON位,我只需要从值中访问datetime字段,而不是第一个整数条目,但我找不到使用Python实现这一点的方法。有什么想法吗用Python解析JSON值,python,json,Python,Json,我有下面这样的JSON位,我只需要从值中访问datetime字段,而不是第一个整数条目,但我找不到使用Python实现这一点的方法。有什么想法吗 { "boolean": true, "null": null, "number": 123, "values": [ [ "95", "2011-12-04" ], [ "90", "2011-10-03" ] ] } 将其转换为pyt
{
"boolean": true,
"null": null,
"number": 123,
"values": [
[
"95",
"2011-12-04"
],
[
"90",
"2011-10-03"
]
]
}
将其转换为python dict后:
for data_list in your_dict['values']:
# ['95', '2011-12-04']
date_str = data_list[1]
您可以在循环中解压缩值:
import json
data = json.loads(your_json_value)
for _, date in data['values']:
# do something with `date`
我将每个嵌套列表中的第一个值赋给。
,这是一个传统上用于告诉代码读取器您忽略该值的变量
如果要对日期执行任何有用的操作,您可能需要对其进行解析:
import json
import datetime
data = json.loads(your_json_value)
for _, date in data['values']:
date = datetime.datetime.strptime(date, '%Y-%m-%d').date()
演示:
那么,你尝试过哪些不起作用的方法??
>>> import json
>>> import datetime
>>> your_json_value = '''\
... {
... "boolean": true,
... "null": null,
... "number": 123,
... "values": [
... [
... "95",
... "2011-12-04"
... ],
... [
... "90",
... "2011-10-03"
... ]
... ]
... }
... '''
>>> for _, date in data['values']:
... date = datetime.datetime.strptime(date, '%Y-%m-%d').date()
... print('{:%a %d %B %Y}'.format(date))
...
Sun 04 December 2011
Mon 03 October 2011