首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SyntaxError:多个异常类型必须为括号-comtype

SyntaxError:多个异常类型必须为括号-comtype
EN

Stack Overflow用户
提问于 2022-01-10 06:03:09
回答 2查看 15.4K关注 0票数 1

我是初学者,在使用python为音频控件安装pycaw之后,在为pycaw设置基本的初始化代码时,我会遇到以下错误:

代码语言:javascript
运行
复制
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

基本初始化:-

代码语言:javascript
运行
复制
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))

我试着在网上搜索这个,但是找不到一个修复方法。

我还尝试进入虚拟env中的模块文件,并在COMError,err周围加上括号。

但代码中的其他行也出现了同样的错误,

还尝试重新安装pycaw,并尝试安装不同版本的pycaw几次,但没有修复。

如何修复此错误?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-01-27 14:09:57

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

代码语言:javascript
运行
复制
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
票数 3
EN

Stack Overflow用户

发布于 2022-09-27 09:18:29

我刚刚弄明白了神秘的"SyntaxError: multiple exception types must be parenthesized"信息是什么意思。它试图告诉您的是,在您使用的Python的新版本中,这个语法不再有效:

代码语言:javascript
运行
复制
except COMError, err:

相反,您应该使用以下语法:

代码语言:javascript
运行
复制
except COMError(err):
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70648404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档