Python:如何生成按键?
我正在打开一个进程(使用 os.popen() ),对于某些命令,它会检测某些按键(例如 ESC - 不是字符,而是按键)。 有没有办法将按键事件发送到进程?
I am opening a process (with os.popen() ) that, for some commands, detects certain keypresses (e.g. ESC - not the character, the key). Is there a way to send keypress events to the process?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可能想要类似
Pexpect
的东西。 它已经存在了一段时间,现在可能有更好的选择,但它会让你做你想做的事。据我所知,没有简单的方法可以使用 os.popen 或 subprocess 模块中的命令来完成此类操作。
You probably want something like
Pexpect
. It's been around a while, and there may be a better alternative, now, but it will let you do what you want.As far as I know, there is no easy way to do that kind of thing with os.popen or the commands in the
subprocess
module.最明显的方法是在它自己的 shell 中启动该进程。
类似于 os.popen("sh 命令")
The obvious way would be to start the process in it's own shell.
something like os.popen("sh command")
这是在什么平台上?
如果事件循环在 Win32 上运行,您可能必须实际将事件提供给事件循环。
What platform is this on?
You may have to actually feed events into the event loop, if it's running on Win32.