Display a countdown for the python sleep function

后端 未结 7 1175
一生所求
一生所求 2020-12-30 02:27

I am using time.sleep(10) in my program. Can display the countdown in the shell when I run my program?

>>>run_my_program()
tasks done, now sleeping          


        
7条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-30 02:53

    Sure, just write a loop that prints 10 minus the iteration counter, then have it sleep 1 second each iteration and run for 10 iterations. Or, to be even more flexible:

    def printer(v):
        print v
    def countdown_timer(duration, step=1, output_function=printer,
                        prompt='Waiting {duration} seconds.'):
        output_function(prompt.format(duration=duration))
        for i in xrange(duration/step):
            output_function(duration - step * i)
    

提交回复
热议问题