【问题标题】:Parse json from database [duplicate]从数据库中解析 json [重复]
【发布时间】:2017-01-02 02:05:45
【问题描述】:

我想从数据库中提取json,所以我这样做了:

来自数据库的内容 json

'{ "规则": 98 }

def do():
    c = conn.cursor()
    c.execute("SELECT content_json FROM page_s WHERE URL = 'page'")
    select = json.dumps(c.fetchone()) # return '{ "rules": 98 }
    extract = json.loads(select)
    print extract['rules']

但是有错误

TypeError: 列表索引必须是整数,而不是 str

【问题讨论】:

  • 你没有提到:正在使用什么数据库,错误在哪一行,有问题的列是什么数据类型,等等......
  • 你为什么要浪费循环将c.fetchone()转储到JSON然后再加载它?

标签: python json


【解决方案1】:

c.fetchone() 返回一个元组,在您的情况下是一个 1 项元组。

所以我会写:

print(extract[0]['rules'])

或直接在源头:

select = json.dumps(c.fetchone()[0])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-11
    • 2020-06-17
    • 2017-01-22
    • 1970-01-01
    • 1970-01-01
    • 2017-09-01
    • 1970-01-01
    相关资源
    最近更新 更多