募捐活动的消息发送名单在异步的方式

0

的问题

对不起,对于任何破英语...

所以,基本上,我有一个列表,其中包含的信息和他们的命运:

messages = [(id_1, msg_1), (id_2, msg_2), (id_3, msg_3),]

我想要的是使用: async for msg in messages 然而,我的名单,很明显,不是异步迭代(I am使用sqlite3)如何可以将其转换为一个异步迭代表?

1

最好的答案

0

你不需要"异步迭代清单"。 你可以只是循环通常:

for (id, msg) in messages:
    # do things...

如果你 真的 需要一个"异步迭代表",可以把它喜欢这样,但是注意到这可能是很不必要的(而且,它也要求最近Python版):

async def make_async_iter(lst):
    for item in lst:
        yield item

...

async for item in make_async_list(messages):
    # use item...
2021-11-23 18:48:47

1-谢谢! 2-我正在使用: @client.on(events.NewMessage) 所以我可以发送和接收信息的同时,但我试图让他们不框彼此整个事情不要停止工作。 3-我想我会得到一个更好看的例子。
Joao Pedro Lourenco Affonso

默认情况下,一个新的 asyncio 任务是产生于每次更新,所以他们不会块。 唯一的问题发生,如果你阻止使用的方法(喜欢 time.sleep 而不是的 asyncio.sleep).
Lonami

啊,非常感谢你! 我最终解决问题,因为你早些时候所建议,但这仍然有用的!
Joao Pedro Lourenco Affonso

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................