Можно ли перебирать список, вызывающий асинхронную функцию?Python

Программы на Python
Ответить
Anonymous
 Можно ли перебирать список, вызывающий асинхронную функцию?

Сообщение Anonymous »

Я новичок в этом, поэтому прошу прощения за ошибки.
Я пытаюсь найти способ перебора внутри диапазона цикла for, вызывая асинхронную функцию, но не дожидаясь ответа.
вот мой код

Код: Выделить всё

import asyncio
from random import randint
import time
import threading

async def print_i(i):
number = 0
if (number % 2) == 0: #check for even number
time.sleep(5)
while number != 5:
number = randint(0,100)
print("id-", i)

for i in range (0,100):
asyncio.run(print_i(i))
# thread = threading.Thread(target=print_i(i))
# thread.start()

И asyncio.run, и thread.start() линейно выполняют вызванную функцию, тогда как я надеялся, что цикл for вызовет функции на всех итерациях за один раз, и только четные числа "i" получат time.sleep(5)
Возможно ли это?>

Подробнее здесь: https://stackoverflow.com/questions/708 ... c-function
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»