@mafioznic161

Как заставить функции работать одновременно?

Вот код:
import time
print("This is console module")
from threading import Thread
i=0
iw=0
def w():
   while True:  
     for i in range(1,32):
        print("q")
        print(i,"w")
        time.sleep(0.5)
   
      
      

def w1():
   while True: 
     for i in range(1,32):
        print("q1")
        print(i,"w1")
        time.sleep(0.5)
   
      
def main():
   Thread(target=w()).start()
   Thread(target=w1()).start()
while True:
    main()
    continue

Вывод должен быть таким:
q
1,w
q1
1,w1
q
2,w
q1
2,w1
И так далее
Как сделать?
  • Вопрос задан
  • 139 просмотров
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
def w():
   for i in range(1, 5):
      print("q")
      print(i,"w")
     

def w1():
   for i in range(1, 5):
      print("q1")
      print(i,"w1")
   
      
def main():
   Thread(target=w).start()
   Thread(target=w1).start()

main()

This is console module
q
1 w
q1
q
1 w1
2 w
q1
q
2 w1
3 w
q1
q
3 w1
4 w
q1
4 w1


target=w() - так вы вызываете функцию, соответственно ждёте пока она не отработает.
continue вам нигде не нужен, цикл и без них будет итерироваться.
Последний блок while будет бесконечно порождать потоки и очень скоро скрипт умрёт.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы