time.sleep需要整数?

Ant*_*rth 8 python time integer sleep pyhook

我正在编写一个宏,当我按一个键时会点击屏幕上的某些点.

我第一次按一个键,一切正常.
但是,任何其他按键都会导致错误:

    time.sleep(0.1)
TypeError: an integer is required
Run Code Online (Sandbox Code Playgroud)

这是代码:

import win32api
import win32con
import time
import pythoncom
import pyHook
import os

def Click(x,y):
    win32api.SetCursorPos((x,y))
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)

def DeleteRun(event):
    Click(1250, 741)
    time.sleep(0.1)
    Click(649,261)
    time.sleep(0.1)
    Click(651, 348)
    time.sleep(0.1)
    Click(800, 442)
    time.sleep(0.1)
    Click(865, 612)


Click(20,20)
KeyGrabber = pyHook.HookManager()
KeyGrabber.KeyDown = DeleteRun
KeyGrabber.HookKeyboard()
pythoncom.PumpMessages()
Run Code Online (Sandbox Code Playgroud)

这似乎是第一次DeleteRun运行函数pyHook,time.sleep()接受浮点数.
在任何后续函数调用中,它似乎只接受整数.

是什么造成的?
我不能等待5秒钟的鼠标安排!它应该节省时间!

眼镜:

  • python 2.7.2
  • Windows 7(32)

DSM*_*DSM 5

好的,这个怎么样?向DeleteRun添加返回True:

def DeleteRun(event):
    Click(1250, 741)
    time.sleep(0.1)
    [...]
    return True
Run Code Online (Sandbox Code Playgroud)

我应该承认,这只不过是google-fu:阅读这个问题的答案.