我为python安装了rtmidi并能够导入它。但是当我试图运行这里给出的整个用法示例:https://pypi.python.org/pypi/python-rtmidi时,我得到了一个错误:
AttributeError:'rtmidi_python.MidiOut'object没有属性'get'u ports'
以下是完整代码:
import time
import rtmidi_python as rtmidi
midiout = rtmidi.MidiOut()
available_ports = midiout.get_ports()
if available_ports:
midiout.open_port(0)
else:
midiout.open_virtual_port("My virtual output")
note_on = [0x90, 60, 112] # channel 1, middle C, velocity 112
note_off = [0x80, 60, 0]
midiout.send_message(note_on)
time.sleep(0.5)
midiout.send_message(note_off)
del midiout
我在导入部分稍微修改了代码,因为不知何故,当我放入import rtmidi
时,它不起作用,但当我放入import rtmidi_python
时,它可以工作。在
我使用的是python3.5。如有任何帮助,将不胜感激,谢谢!在
出现问题的原因是您正在运行python-rtmidi的示例代码,但安装了rtmidi-python。我不骗你,这是两个独立的库,它们用几乎相同的接口做同样的事情。真是疯了!您有两种选择:
pip install python-rtmidi
您可以修改代码,使其与
rtmidi-python
一起工作,如下所示:您可以看到:您只需引用
ports
属性,而不是get_ports()
。在相关问题 更多 >
编程相关推荐