我有一个功能可以制作不同的字典:
def get_dic():
dic = {}
for interval in intervals:
for symbol in symbols:
dic = {(symbol, interval, 'high'): [], (symbol, interval, 'low'): [], (symbol, interval, 'close'): []}
historical(dic)Then I have a function that starts the ThreadedWebsocketManager.start_multiplex_socket like this:
twm = ThreadedWebsocketManager(api_key=api_key, api_secret=api_secret)
twm.start()
for interval in intervals:
streams = ['btcusdt@kline_' + interval, 'ethusdt@kline_' + interval]
twm.start_multiplex_socket(callback=add_new_data_values, streams=streams)
twm.join()现在,这个函数用标准参数msg调用函数add_new_data_values,但是我想向它添加参数dic,这样我就可以使用从get_dic函数中检索到的dic,但是当我尝试这样做时,它会出现错误"add_new_data_values()缺少一个必需的位置参数:‘dic’“。
def add_new_data_values(msg, dic):
candle = msg['data']['k']所以我要问的是:如何将dic参数添加到函数中?我想这句话必须要做些什么,但我不知道如何改变它:
twm.start_multiplex_socket(callback=add_new_data_values, streams=streams)发布于 2022-01-16 02:53:40
您可以使用partial from functools
对于你的案子,partial(add_new_data_values, dic=your_parameter)
您可以在这个answer中寻找另一个示例。
https://stackoverflow.com/questions/70005011
复制相似问题