当前位置:首页 >> 脚本专栏

python等待10秒执行下一命令的方法

python等待10秒执行下一命令的方法:

首先导入时间(time)模块;

然后在需要等待执行的命令前调用sleep()方法,并在方法的括号里将等待时间设置为10秒即可。

import time
print '10秒前'
time.sleep(10)
print '10秒后'

先打印10秒前,等待10秒后,打印10秒后。

内容扩展:

不用多线程的话,可以用信号来解决这个问题。

# -*- coding: utf-8 -*-
import signal

class InputTimeoutError(Exception):
  pass

def interrupted(signum, frame):
  raise InputTimeoutError


signal.signal(signal.SIGALRM, interrupted)
signal.alarm(10)

try:
  name = raw_input('请在10秒内输入你的名字:')
except InputTimeoutError:
  print('\ntimeout')
  name = '无名'

signal.alarm(0) # 读到输入的话重置信号
print('你的名字是:%s' % name)

运行结果:

$ python input_with_timeout.py
请在10秒内输入你的名字:foobar
你的名字是:foobar

$ python input_with_timeout.py
请在10秒内输入你的名字:
# 等待 10 秒
timeout
你的名字是:无名