首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python将字符串转换为json对象

Python将字符串转换为json对象
EN

Stack Overflow用户
提问于 2017-09-13 07:47:52
回答 2查看 4.8K关注 0票数 0

输出是

代码语言:javascript
运行
复制
"Passanger status:\n passanger cfg086d96 is unknown\n\n"

我想将它转换为json对象,如

代码语言:javascript
运行
复制
{
  "Passanger_status": "passanger cfg086d96 is unknown"
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-13 07:54:21

只需将json.dumps()应用于由一行组成的本机python字典:

代码语言:javascript
运行
复制
{k.replace(" ","_"):v.strip() for k,v in (x.split(":") for x in ["Passanger status:\n passanger cfg086d96 is unknown\n\n"])}

内部生成器理解避免对dict键/值的每个部分调用split。对该值进行剥离,以删除尾随/前导空格。键中的空格字符被下划线替换。

其结果是( dict):

代码语言:javascript
运行
复制
{'Passanger status': 'passanger cfg086d96 is unknown'}

作为json字符串,使用indent生成新行:

代码语言:javascript
运行
复制
>>> print(json.dumps({k.replace(" ","_"):v.strip() for k,v in (x.split(":") for x in ["Passanger status:\n passanger cfg086d96 is unknown\n\n"])},indent=2))
{
  "Passanger_status": "passanger cfg086d96 is unknown"
}
票数 2
EN

Stack Overflow用户

发布于 2017-09-13 08:21:36

你也可以试试这个

代码语言:javascript
运行
复制
data_dic = dict()
data = "Passanger status:\n passanger cfg086d96 is unknown\n\n"
x1 , x2 = map(str,data.split(":"))
data_dic[x1] = x2
print data_dic

如果你觉得很简单

产出:

代码语言:javascript
运行
复制
{'Passanger status': '\n passanger cfg086d96 is unknown\n\n'}

对于下划线的空格,可以在字典的键中使用替换方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46191788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档