您好我正在努力从以下DF创建列表对象:
In [102]: trd
Out[102]:
side chg
EWJ BUY 100.0
IEV BUY 70.0
VGK SELL 30.0
期望的输出:
[MarketOrder('BUY',100), MarketOrder('BUY',70), MarketOrder('SELL',30)]
尝试了以下但没有成功。
orders = [MarketOrder(str(trd['side']), trd['chg']) for rows in trd.index]
我做错了什么?
答案 0 :(得分:3)
使用zip
:
orders = [MarketOrder(x[0], x[1]) for x in zip(trd['side'], trd['chg'])]
或者:
orders = [MarketOrder(x, y) for x,y in zip(trd['side'], trd['chg'])]
在每个循环中的列表理解中,使用列MarketOrder
,side
chg
次使用len(trd.index)
。