我在Ubuntu 14.04中使用PyGTK for Python 2.7,但我收到以下消息:
RuntimeWarning: PyOS_InputHook is not available for interactive use of PyGTK
可能是什么原因?
答案 0 :(得分:2)
什么时候触发?您是在尝试运行某些脚本还是只是以交互方式使用PyGTK?
最有可能的是,您的输入挂钩被另一个交互式循环抓取,例如:
>>> import Tkinter
>>> root = Tkinter.Tk() # input hook is grabbed by Tkinter for immediate result evaluation
>>> import gtk # gtk tries to grab the hook, but fails
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:127: RuntimeWarning: PyOS_InputHook is not available for interactive use of PyGTK
立即结果评估表示在进入主循环之前立即评估表达式结果(例如显示窗口)。
请记住,这是一个警告,而不是错误,但如果它困扰你, 您可以尽早导入gtk模块(或者,合理地提前)并释放输入挂钩:
import gtk
gtk.set_interactive(False)
import Tkinter
root = Tkinter.Tk()
# no warning here