Pygame.midi
我有Python 2.7的pygame版本2.7
IDLE似乎认出了它,但PyCharm没有。这是为什么?
我正在尝试制作DRUM vst,
但我没有走得太远,因为出现了以下错误:
Traceback (most recent call last):
File "C:/Users/user/PycharmProjects/POm/NewtonIncVST.py", line 12, in <module>
reading = in_port.midi.read()
AttributeError: 'int' object has no attribute 'midi'
代码示例
import pygame
import pygame.midi
pygame.init()
pygame.midi.init()
in_port = pygame.midi.get_default_input_id()
port = pygame.midi.get_default_output_id()
reading = in_port.pygame.midi.read()
check = reading.midi.poll()
pygame.midi.quit()
有人可以向我解释为什么PyCharm不会识别pygame.midi
吗?
答案 0 :(得分:0)
我发现Pygame.Midi
需要portmidi,它预装了pygame,形式为:
from pygame import pypm
pypm.Initialize()
#needed to initialize pygames compiled version of pyPortMidi
除了翻译之外,它似乎也是一个问题。
答案 1 :(得分:-1)
这应该是因为你的intrepeter与你的IDLE版本版本不同。例如,使用Python 2.7.5的intrepeter,它将无法识别此代码在IDLE版本2.7.9中有任何影响:
IDLE和PyCharm:
string = 'XXXuuu'
string[:-3]
<强>结果:强>
'XXX'
PyCharm结果:
#Nothing, says that `string[:-3]` has no effect in the program
所以,这是一个例子,说明当你有错误的重复者时会发生什么。另一个解决方案是如果您的intrepeters相同,则将我们的PyCharm更新到版本4.0.3。如果仍然没有,请提交错误报告或测试以查看您的intrepeter是否有缺陷。我希望这可以帮助你!