如何使用python将此json之类的字符串更改为json

Posted

技术标签:

【中文标题】如何使用python将此json之类的字符串更改为json【英文标题】:How to change this json like string to json with python 【发布时间】:2016-02-11 13:17:10 【问题描述】:

// [ “id”:“304466804484872”,“t”:“GOOG”,“e”:“纳斯达克”,“l”:“720.01”,“l_fix”:“720.01”,“l_cur” :"720.01","s":"0","ltt":"10:23AM EST","lt":"11 月 10 日上午 10:23 EST","lt_dts":"2015-11-10T10:23 :21Z" ,"c" : "-4.88" ,"c_fix" : "-4.88" ,"cp" : "-0.67" ,"cp_fix" : "-0.67" ,"ccol" : "chr" ,"pcls_fix " : "724.89" ]

我试过了

u = urllib2.urlopen(url)

内容 = u.read() obj = json.loads(内容[3:])

但返回所有带有 u' 的元素 然后我做

map(lambda x:x.encode(acsii), obj)

但只获取密钥 如何获取值?

【问题讨论】:

欢迎来到 Stack Overflow!您似乎在要求某人为您编写一些代码。 Stack Overflow 是一个问答网站,而不是代码编写服务。请see here学习如何写出有效的问题。 我尝试了 json.load 但似乎无法正常工作。 有道理,因为json.load 接受文件对象而不是字符串。 提示:json 模块中有另一个函数可以处理字符串而不是文件对象... 适用于 obj = json.loads(content[3:]) 但每个字符串前面都有 u'string' 【参考方案1】:

转换后:

for k, v in obj[0].items():
    print k, j

这将打印:

c -4.88
ccol chr
e NASDAQ
ltt 10:23AM EST
cp_fix -0.67
c_fix -4.88
l 720.01
s 0
lt Nov 10, 10:23AM EST
pcls_fix 724.89
t GOOG
lt_dts 2015-11-10T10:23:21Z
l_fix 720.01
cp -0.67
id 304466804484872
l_cur 720.01

在那里看不到“你”

【讨论】:

以上是关于如何使用python将此json之类的字符串更改为json的主要内容,如果未能解决你的问题,请参考以下文章

如何将 python matplotlib.pyplot 图例标记更改为 1、2、3 之类的序列号,而不是形状或字符?

使用 python 将 C++ 结构更改为 JSON 字符串

如何将此javascript函数更改为Jquery [关闭]

将 JavaScript Date 对象转换为 JSON 字符串时日期更改为前一天

如何在tableview中将JSON字符串更改为日期格式

如何使用 moment.js 将此值 theHour[0].times 更改为时间格式 (HH:mm)