【发布时间】:2021-08-29 23:25:02
【问题描述】:
我正在尝试运行函数 Order,它有 2 个版本,如果 Pair 中存在关键字“USDT”,则其中一个函数是 client.LinearOrder.LinearOrder_new(side="Buy",symbol=tradingpair,order_type="Market",qty=1).result(),否则执行 client.Order.Order_new(side="Buy",symbol=tradingpair,order_type="Market",qty=1).result()。当Order_Execution 被拆分为两个Order 与getattr 函数按预期工作时,我试图在不拆分它的情况下运行它,我将如何修改下面的代码以使其正常工作。
工作代码:
def Exec(Pair)
Order_Execution = "LinearOrder" if "USDT" in tradingpair else "Order"
Order_Execution2 = "LinearOrder_new" if "USDT" in tradingpair else "Order_new"
Order = getattr(getattr(client, Order_Execution), Order_Execution2)(side="Buy",symbol=tradingpair,order_type="Market",qty=1).result()
Exec("BTCUSD")
无效代码:
def Exec(Pair)
Order_Execution = "LinearOrder.LinearOrder_new" if "USDT" in tradingpair else "Order.Order_new"
Order = getattr(client, Order_Execution)(side="Buy",symbol=tradingpair,order_type="Market",qty=1).result()
Exec("BTCUSD")
【问题讨论】:
标签: python-3.x function format exec conditional-operator