【发布时间】:2016-04-05 19:30:42
【问题描述】:
我创建了一个 Python 脚本,它可以从管道(命名为 pipe1)中获取命令。我测试了脚本(我在终端的管道中手动编写)并且它有效。
现在我想用另一个 Python 脚本控制脚本,如果我按 w、a、s 或 d,它可以写入管道。
你可以在Pastebin找到脚本
我从这个脚本开始:
在这个例子中,我只想打印我按下的键。稍后我将添加echo "" 命令写入管道,我之前测试过。
import time
import sys
def key_inp (event):
print 'Key:', event.char
key_press = event.char
sleep_time = 0.030
while True:
try:
if key_press.lower() == 'w':
print "w"
elif key_press.lower() == 's':
print "s"
elif key_press.lower() == 'a':
print "a"
elif key_press.lower() == 'd':
print "d"
elif key_press.lower() == 'q':
print "q"
elif key_press.lower() == 'e':
print "e"
elif key_press.lower() == 'p':
print "stop"
except(KeyboardInterrupt):
print('Finished')
但我总是遇到同样的错误:
File "key.py", line 12
if key_press.lower() == 'w':
^
IndentationError: expected an indented block
我的问题是我没有找到像我一样有同样问题的人。 我对这个示例脚本的替代方案持开放态度。
【问题讨论】:
标签: python input keyboard raspberry-pi robotics