【发布时间】:2022-07-21 14: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"
)
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)
但是,它不起作用,因为“味精”没有定义。 我可以知道在这种情况下如何返回值吗?谢谢。
【问题讨论】:
-
你不能那样做。您没有调用该函数,
depth_v2_stream正在调用它。如果您想保留一些信息,则必须使用global或将其设为类。 -
您希望
x = handle_message(msg)做什么?没有收到消息,应该返回什么? -
我可以知道如何使它成为一个类吗?由于调用了“味精”。我不知道如何“返回 msg”,而是使用参数“msg”调用函数。谢谢。
标签: python