- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是我在 stackoverflow 上发表的第一篇文章,所以如果我没有遵循正确的礼仪,请告诉我。
我也是Python新手,想将其合并到一个项目中。我目前拥有 Emotiv EEG 耳机,并希望根据大脑信号运行自制 3D 打印机。为此,EmoKey 2.0.0.20 读取 EEG 耳机(参见附图),EmoKey 然后将击键发送到 Python Shell,Python 对此进行解释并通过 COM 端口将命令发送到我的 Arduino 运行打印机。这似乎是一种间接的做事方式,但除了一个问题之外,它确实有效。让我们假装我认为左边,这被发送到 EmoKey,输入“L”并按 Enter 键进入 Python Shell。理论上,这会将打印机头向左移动。但是,当 EmoKey 发送 Enter 时,它只会在 Shell 中创建一个新行,而不会实际执行。然后我必须手动按回车键,这就破坏了整个要点。
.getch() 不起作用,因为我认为没有实际的击键可以读取。下面的链接似乎也很有用,但到目前为止还没有起作用。
How to run a shell script without having to press enter/confirm s.th. inbetween
我的问题是:当只编写 L 或 R 之类的内容时,如何让 Python 执行 shell 中编写的内容?我不认为我可以让它等待击键,Python 必须等待并在看到特定命令时自动执行。
我知道这可能看起来像是下面链接的重复。然而,到目前为止,.getch 还没有与 EmoKey 一起使用(也许这只是我的一个错误)。另外,我不想找到一种方法让我的 Python 脚本读取放入 shell 中的内容。尽管为了简化和原型(prototype)设计,我仅使用“L”和“R”命令开始了这个项目,但我将转而使用 G 代码,以便可以与其他打印机或 CNC 设备进行通信。这是 .getch 在我的情况下不起作用的另一个原因,因为它只抓取单个字符(单个 G 代码命令将有几个字符长)。 Python read a single character from the user
我使用的是 Windows 10 和 Python 2.7.11。
import serial
ser = 0
def init_serial():
COMNUM = 3 #Enter Your COM Port Number Here.
global ser #Must be declared in Each Function
ser = serial.Serial()
ser.baudrate = 9600
ser.port = COMNUM - 1 #COM Port Name Start from 0
#ser.port = '/dev/ttyUSB0'
#Specify the TimeOut in seconds, so that SerialPort
#Doesn't hangs
ser.timeout = 10
ser.open() #Opens SerialPort
# print port open or closed
if ser.isOpen():
print 'Open:' + ser.portstr
init_serial()
while 1:
temp = raw_input('Send command + Enter:\r\n')
ser.write(temp) #Writes to the SerialPort
#bytes = ser.readline() #Read from Serial Port
#print 'Response: ' + bytes #Print What is Read from Port
最佳答案
我认为您正在寻找类似 readchar 的内容:
import readchar
ch = readchar.readkey()
关于Python 无需输入即可运行 Shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36759447/
这实际上是我问的问题的一部分here ,该问题没有得到答复,最终被标记为重复。 问题:我只需使用 @Autowired 注释即可使用 JavaMailSender。我没有通过任何配置类公开它。 @Co
我是一名优秀的程序员,十分优秀!