我如何通过在这里进行字符串拆分来获取 json 键名? (Python)
Posted
技术标签:
【中文标题】我如何通过在这里进行字符串拆分来获取 json 键名? (Python)【英文标题】:How would I get the json key names by doing a string split here? (Python) 【发布时间】:2017-04-06 00:19:44 【问题描述】:我有一个 json 变量:
[u'"Average_Rating":3.75,"Number_Of_Users_Who_Have_Watched_This_Movie":90,"title":"Quiz Show (1994)"']
而且我想获得“3.75”、“90”和“测验秀 (1994)”。我试过做:
for i in var:
i.split(":")[1:-3]
但它不起作用。我确定这很简单,但只是不知道如何正确使用它!有人可以帮忙吗?
编辑:
通常,我只会使用 json
库,但我使用的是 Apache PySpark,并且 JSON 存在一些问题 - 我如何仅使用字符串拆分来做到这一点?
【问题讨论】:
你没有 JSON var,你有一个包含一个 unicode 字符串的列表(包含 JSON)。 哦,我明白了,谢谢。我怎样才能从中获得各自的价值? 你有read the docs吗? 嗨@WayneWerner,刚刚进行了编辑。 @xn139 您可能想在您的问题中添加类似的限制,甚至可能以标签的形式。使用通用 python 标签,如果您认为它们可以帮助本地化您的问题,您仍然可以再添加 4 个。 【参考方案1】:您正在尝试从 JSON 字符串中获取信息,您应该为此使用 json
。
var = [u'"Average_Rating":3.75,"Number_Of_Users_Who_Have_Watched_This_Movie":90,"title":"Quiz Show (1994)"']
import json
for i in var:
print json.loads(i)["Average_Rating"]
根据原发帖者的要求:
var = [u'"Average_Rating":3.75,"Number_Of_Users_Who_Have_Watched_This_Movie":90,"title":"Quiz Show (1994)"']
for i in var:
print(i.split(":")[1].split(",")[0])
【讨论】:
嗨,通常我会,但我使用的是 Apache PySpark,并且 JSON 存在一些问题 - 我如何仅使用字符串拆分来做到这一点?以上是关于我如何通过在这里进行字符串拆分来获取 json 键名? (Python)的主要内容,如果未能解决你的问题,请参考以下文章