【问题标题】:Python: How to extract a List thats inside an array, which is inside a list?Python:如何提取数组内的列表,它在列表内?
【发布时间】:2021-08-29 09:31:16
【问题描述】:

一周来每天都在尝试解决这个问题......

我正在接收数据,然后使用 json.loads 并对其进行可变处理。 这是我似乎无法在没有错误代码的情况下进一步可变化的打印输出:

[548, {'a': ['2364.66000', 16, '16.94656538'], 'b': ['2364.65000', 8, '8.45377850 '], 'c': ['2364.66000', '0.35264111'], 'v': ['494.53876892', '54702.28957251'], 'p': ['2363.99238', '2359.02527' ], 't': [404, 31739], 'l': ['2355.99000', '2258.59000'], 'h': ['2375.91000', '2453.03000'], 'o': ['2369.82000', ' 2338.83000']}, 'ticker', 'somerandontextcharacters']

你知道,尝试将这些粗体特定数字中的一个或多个分配给变量,这样我就可以随心所欲了。

附注x = [548,{thewholething-etc...]

附言使用 .recv 命令从 websocket 连接响应接收数据,然后使用 json.loads'ed。一些打印输出是 {etc,etc,} 但有些是 [etc,{etc,etc,}]

【问题讨论】:

  • 我建议你应该添加输出示例,很难看出你真正想要什么
  • x = json.loads(response) print(x) # 显示以上内容
  • 仅在尝试从 x 中提取和分配变量时看到错误代码
  • 这不是错误,只是一个值列表。

标签: python arrays json list extract


【解决方案1】:

其实很简单:

test = [{'a' : [1,2,3], 'b': [4,5,6]}] # this is just an example

var1 = test[0]['a'][1] # should be 2
var2 = test[0]['b'][2] # should be 6

print(var1)
print(var2)

输出:

2
6

【讨论】:

  • with x = json.loads(pub.recv()) print(x[1]['a'][1])
  • 让我发几行,一次回复,1秒
  • x = json.loads(pub.recv()) print(x)
  • 如果 x[0] == 548?
  • 您可以通过检查每个的类型进行过滤:if type(x) == list
猜你喜欢
  • 2012-03-10
  • 1970-01-01
  • 1970-01-01
  • 2015-07-15
  • 1970-01-01
  • 2017-04-26
  • 2017-10-19
  • 2017-07-08
  • 2021-09-12
相关资源
最近更新 更多