Python:将列表转换为dict以将特定数据分配给变量

时间:2018-02-09 09:13:45

标签: python

代码:

a={'day': [{'average_price': 9.3,
   'buy_m2m': 9.3,
   'buy_price': 9.3,
   'buy_quantity': 1,
   'buy_value': 9.3,
   'close_price': 0,
   'exchange': 'NSE',
   'instrument_token': 2867969,
   'last_price': 9.3,
   'm2m': 0.0,
   'multiplier': 1,
   'net_buy_amount_m2m': 9.3,
   'net_sell_amount_m2m': 0,
   'overnight_quantity': 0,
   'pnl': 0.0,
   'product': 'MIS',
   'quantity': 1,
   'realised': 0,
   'sell_m2m': 0,
   'sell_price': 0,
   'sell_quantity': 0,
   'sell_value': 0,
   'tradingsymbol': 'SUBEX',
   'unrealised': 0.0,
   'value': -9.3}],
 'net': [{'average_price': 9.3,
   'buy_m2m': 9.3,
   'buy_price': 9.3,
   'buy_quantity': 1,
   'buy_value': 9.3,
   'close_price': 0,
   'exchange': 'NSE',
   'instrument_token': 2867969,
   'last_price': 9.3,
   'm2m': 0.0,
   'multiplier': 1,
   'net_buy_amount_m2m': 9.3,
   'net_sell_amount_m2m': 0,
   'overnight_quantity': 0,
   'pnl': 0.0,
   'product': 'MIS',
   'quantity': 1,
   'realised': 0,
   'sell_m2m': 0,
   'sell_price': 0,
   'sell_quantity': 0,
   'sell_value': 0,
   'tradingsymbol': 'SUBEX',
   'unrealised': 0.0,
   'value': -9.3}]}
b= a['day']

a在python中显示dict类型变量。我想将buy_price的值9.3分配给变量``x和instrument_token的值2867969变量y

现在问题是在使用b=a['day']后,b变量变为python中的列表,因此我无法使用x=b['buy_price']来获取x=9.3

3 个答案:

答案 0 :(得分:0)

x = b [0] ['buy_price']怎么样?

答案 1 :(得分:0)

试试这个:

x = b[0]['buy_price']

y = b[0]['instrument_token']

答案 2 :(得分:0)

  

现在问题是在使用b = a ['day']之后,b变量变为列表

它不会“变成”一个列表,它已经是一个:查看你的a字典,a['day']是一个列表 - 包含一个单独的字典。

  

所以我不能使用x = b ['buy_price']

显然不是。 buy_pricea['day']所包含的词典中的一个键,因此您必须首先使用b[0]引用该词典,然后您才能获得所需的键,即b[0]['buy_price']