Python3安装ldap3模块后import报错SyntaxError语法错误求助
报错根因
async 自Python 3.7版本起成为Python官方保留关键字,你当前安装的ldap3版本过低,旧版本代码中直接使用async作为模块名称,不符合高版本Python语法规范,因此触发SyntaxError。
解决步骤
- 卸载当前旧版本ldap3
执行命令:pip3 uninstall ldap3 -y - 安装适配Python3.7+的高版本ldap3
ldap3从2.9版本开始已修复该命名冲突问题,将原async模块重命名为asyncio,执行命令:pip3 install ldap3>=2.9 - 验证修复结果
执行命令:python3 -c "import ldap3;print('ldap3导入成功,版本为:', ldap3.__version__)",无报错且正常输出版本号即为修复完成。
异常场景排查
如果执行上述操作后仍报错,可确认是否存在多Python版本共存问题:
执行pip3 -V查看输出的包安装路径,是否和报错信息里的路径/usr/local/lib/python3.9/dist-packages/匹配,若不匹配则使用当前Python3.9的绝对路径执行安装,示例命令:/usr/local/bin/python3.9 -m pip install ldap3>=2.9
内容的提问来源于stack exchange,提问作者Suspense Sus
相关产品推荐
相关产品推荐

