【问题标题】:Building json strings in Python - issues with strings and unicode在 Python 中构建 json 字符串 - 字符串和 unicode 的问题
【发布时间】:2014-04-19 23:18:16
【问题描述】:

无法将变量类型转换为带引号的格式。基本上我从 json 字典(一个 API)中提取一些信息,然后我想用它构建我自己的 json,但是我遇到了类型问题。基本上我从 jason 中提取的是 unicode(使用 type(extract) 检查),我想创建一个字符串:

myjson = '"extract":' + str(extract) 

然而,当我打印出 myjson 时,我没有得到字符串或引号中的提取,这会导致稍后在传递 json 时出现问题。现在这似乎适用于从 API 中提取的某些值,但不适用于其他值。如何确保构建的字符串始终正确格式化? IE。加载 myjson 不会中断。所以当我打印出来时,我得到"extract": xyz 123,但xyz 123 不是 "xyz 123"

我还使用以下方法从 unicode 转换为字符串类型:

encode('ascii','ignore')

即:

myjson = '"extract":' + str(extract.encode('ascii','ignore')) 

为什么在这个问题上建立 json 字符串是一种防弹方法?

【问题讨论】:

  • 为什么要建立一个字符串?如果您使用 JSON 输入,您可以继续使用 dicts 吗?你看过 json.loads 和 json.dumps 吗?

标签: python json


【解决方案1】:

看看json library

import json
myjson = json.dumps({
    "extract": extract
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-11
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 2011-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多