【问题标题】:How would I get the json key names by doing a string split here? (Python)我如何通过在这里进行字符串拆分来获取 json 键名? (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 个。

标签: python


【解决方案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 存在一些问题 - 我如何仅使用字符串拆分来做到这一点?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-02-27
  • 2018-12-31
  • 2011-03-29
  • 2014-09-11
  • 1970-01-01
  • 2014-07-26
  • 1970-01-01
相关资源
最近更新 更多