我有以下代码:
from time import sleep
from pybit import spot
ws_spot = spot.WebSocket(
test=True,
ping_interval=30, # the default is 30
ping_timeout=10, # the default is 10
domain="bybit" # the default is "bybit"
)
def handle_message(msg):
print(msg)
ws_spot.depth_v2_stream(
handle_message, "ETHUSDT"
)
while True:
sleep(1)我想修改函数"handle_message“,以便它可以返回值。我试过了
from time import sleep
from pybit import spot
ws_spot = spot.WebSocket(
test=True,
ping_interval=30, # the default is 30
ping_timeout=10, # the default is 10
domain="bybit" # the default is "bybit"
)
def handle_message(msg):
return msg
x = handle_message(msg)
ws_spot.depth_v2_stream(
handle_message, "ETHUSDT"
)
while True:
print(x)但是,由于没有定义"msg“,所以它不起作用。我可以知道在这种情况下如何返回值吗?谢谢。
发布于 2022-07-21 06:18:39
我不知道您的代码到底在尝试什么,但您需要这样做:
from time import sleep
from pybit import spot
ws_spot = spot.WebSocket(
test=True,
ping_interval=30, # the default is 30
ping_timeout=10, # the default is 10
domain="bybit" # the default is "bybit"
)
savedmsg = None
def handle_message(msg):
global savedmsg
savedmsg = msg
print(msg)
ws_spot.depth_v2_stream(
handle_message, "ETHUSDT"
)
while not savedmsg:
sleep(1)
print(savedmsg)https://stackoverflow.com/questions/73061475
复制相似问题