如何打印独立的文本python块

时间:2019-04-30 02:36:58

标签: python python-3.x text timer

情况:使用倒数计时器将提示打印到屏幕上

简单示例:

Enter selection, default choice will be selected after timer runs out
Timer: 01:05
(1) Selection 1 (Default)
(2) Selection 2
(3) Selection 3

Selection: 

定时器必须保持运行,而用户必须能够不间断地键入选择。这是计时器的代码。到目前为止,所有内容都使用print()打印。

def countdown(t):
    while t:
        mins, sec = divmod(t, 60)
        hours, mins = divmod(mins, 60)
        timeformat = '{:02d}:{:02d}:{:02d}'.format(hours, mins, secs)
        print(timeformat, end='\r')
        time.sleep(1)
        t -= 1

问题:这意味着提示和倒数计时器(截至目前,我的计时器正在阻塞[从方法中调用])需要互斥

问题:如何使这两个文本块彼此独立,以使计时器继续滴答作响,但提示和用户输入将不受计时器的倒数影响(使用“ \ r”)

1 个答案:

答案 0 :(得分:1)

您需要一个单独的线程来更新计时器,并且需要一个线程来读取用户输入。