asyncio jak zwrócić wartość zmiennej?

asyncio jak zwrócić wartość zmiennej?
M4
  • Rejestracja:około 4 lata
  • Ostatnio:około 3 lata
  • Postów:3
0
Kopiuj
import asyncio
from binance import AsyncClient, BinanceSocketManager


async def main():
    client = await AsyncClient.create()
    bm = BinanceSocketManager(client)
    # start any sockets here, i.e a trade socket
    ts = bm.trade_socket('BNBBTC')
    # then start receiving messages
    async with ts as tscm:
        while True:
            res = await tscm.recv()
            print(res)

    await client.close_connection()

if __name__ == "__main__":

    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())

Witam, mniej więcej taka funkcja musi się znaleźć w moim programie problem w tym że nie wiem jak zwrócić z tego wartoś zmiennej res. Chcę to uruchomić i w momencie kiedy świece na giełdzie się zamknie to też zamknąć połączenie i przejść do przetwarzania tego w dalszej części programu. Zmienne globalne mnie nie interesują. Z góry dzięki. Ze zwykłym websocketem też mam problem więc jak by ktoś napisał jakąś uniwersalną odpowiedź było by pięknie

ledi12
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 2 miesiące
  • Lokalizacja:Wrocław
2

Zwróc co tam chcesz w tym while'u i wsadź loop.until... w zmienna.

Kopiuj
zmienna = loop.run_until_complete(main())
print(zmienna) -> twoja wartosc

Robię http response status cody w martwych ciągach

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.