我从标准输入得到这个字符串。
{u'trades': [自定义(time=1418854520, sn=47998, timestamp=1418854517, price=322, amount=0.269664, tid=48106793, type=u'ask', start=1418847319, end=1418847320), 自定义(time=1418854520, sn=47997, timestamp=1418854517, price=322, amount=0.1, tid=48106794, type=u'ask', start=1418847319, end=1418847320), Custom(time=1418854520, sn=47996 , timestamp=1418854517, price=321.596, amount=0.011, tid=48106795, type=u'ask', start=1418847319, end=1418847320)]}
当我尝试访问时,我的程序失败了jsonload["trades"]
。如果我使用jsonload[0]
我只会收到一个字符:{
.
我检查了从 获取文本不是问题stdin
,但我不知道这是接收格式的问题(因为我使用了 Incursion 库)还是我的 python 代码中的问题。我已经尝试了很多关于json.load/s
但json.dump/s
没有成功的组合。
inputdata = sys.stdin.read()
jsondump = json.dumps(inputdata)
jsonload = json.loads(jsondump)
print jsonload
print type(jsonload) # return me "<type 'unicode'>"
print repr(jsonload) # return me same but with u" ..same string.... "
for row in jsonload["trades"]: # error here: TypeError: string indices must be integers