在 Windows 上安装 python-midi 包时出错

Error installing python-midi package on Windows

我正在尝试使用 pip 在 Windows 上为 python 安装一些软件包,但在尝试安装 python-midi 时出现以下错误:

(env) C:\Users\Asus\Documents\LEI\Algo-Rhythm>pip install python-midi
Collecting python-midi
  Using cached python-midi-v0.2.4.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Asus\AppData\Local\Temp\pip-build-zqxbr1j2\python-midi\setup.py", line 42
        print "No sequencer available for '%s' platform." % platform
                                                    ^
    SyntaxError: Missing parentheses in call to 'print'. Did you mean print(print "No sequencer available for '%s' platform." % platform)?

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\Asus\AppData\Local\Temp\pip-build-zqxbr1j2\python-midi\

我查找了发生错误的文件,但即使查看隐藏文件也找不到它。如果有人知道可能导致此问题的原因或也遇到过此问题,我将很高兴听到。提前致谢。

出现这个错误的原因是因为这个包是为Python2准备的。你可以通过打印语句的旧样式来判断。

Python 2

print "hey"

Python 3

print("hey")

我建议查看从原始 python-midi 包中分叉出来的 python3-midi

我刚刚更新了 setup.py 文件中的打印语句。

    def configure_platform():
        from sys import platform
        ns = __base__.copy()
        # currently, only the ALSA sequencer is supported
        if platform.startswith('linux'):
            setup_alsa(ns)
            pass
        else:
            print("No sequencer available for '%s' platform." % platform)
        return ns

希望对您有所帮助。