SyntaxError: multiple exception types must be parenthesized - comtypes

SyntaxError: multiple exception types must be parenthesized - comtypes

我是初学者,在使用 python 为音频控件安装 pycaw 后遇到问题,在为 pycaw 放置基本初始化代码时,出现以下错误:-

Traceback (most recent call last):
  File "c:\Users\...\volumeControl.py", line 7, in <module>
    from comtypes import CLSCTX_ALL
  File "C:\...\env\lib\site-packages\comtypes\__init__.py", line 375
    except COMError, err:
           ^^^^^^^^^^^^^
SyntaxError: multiple exception types must be parenthesized

基本初始化:-

from ctypes import cast, POINTER
from comtypes import CLSCTX_ALL
from pycaw.pycaw import AudioUtilities, IAudioEndpointVolume

devices = AudioUtilities.GetSpeakers()
interface = devices.Activate(
    IAudioEndpointVolume._iid_, CLSCTX_ALL, None)
volume = cast(interface, POINTER(IAudioEndpointVolume))

我尝试在整个网络上搜索此问题,但找不到解决方法
我还尝试进入虚拟环境中的模块文件并通过在 COMError, err
周围加上括号来括起来 但是代码中的其他行出现了同样的错误,
还尝试重新安装 pycaw 并多次尝试安装不同版本的 pycaw,但没有解决任何问题

如何解决这个错误?

经过一段时间的搜索,我发现 comtypes 使用了一个工具来兼容 python 2 和 3,但在新版本中不再有效。我不得不降级两个包并重新安装 comtypes:

pip install setuptools==57.0.0 --force-reinstall
pip install wheel==0.36.2 --force-reinstall
pip uninstall comtypes
pip install --no-cache-dir comtypes