Как продолжить код, когда цикл уже запущен - PullRequest
1 голос
/ 30 июня 2019

Я создал код, который показывает часы реального времени в начале (работает по циклу и обновляется каждые 1 секунду, используя \ r) Но я хочу запустить остальную часть кода, пока время идет (непрерывно). Но это не пойдет дальше, пока работает цикл. Я думаю, что нет необходимости писать код часов.

1 Ответ

1 голос
/ 05 июля 2019

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

Вот небольшой пример:

import threading
import time
# Define a function for the thread
def print_time( threadName, delay):
   count = 0
   while count < 10:
      time.sleep(delay)
      count += 1
      print ("%s: %s" % ( threadName, time.ctime(time.time()) ))

def counter(threadName, number_of_counts, delay):
    count=0
    while count < number_of_counts:
        print ("%s: %s" % ( threadName, count))
        time.sleep(delay)
        count +=1
# Create two threads as follows
threading.Thread(target=print_time, args=("Thread-1", 1, )).start()
threading.Thread(target=counter, args=("Thread-2", 100, 0.1,)).start()

для получения дополнительной информации проверьте документацию . Обратите внимание, что thread был переименован в _thread в Python 3

...