在Amazon Linux的EC2实例中用Poetry运行Python脚本时tqdm模块缺失的解决方法
解决Poetry管理依赖时
tqdm模块找不到的问题 问题根源
直接用python3执行脚本时,调用的是系统全局Python解释器,而Poetry已将tqdm安装在项目专属的虚拟环境中,全局Python无法访问该环境内的依赖包。
解决办法
方法1:用Poetry Run命令执行脚本(推荐)
直接通过Poetry调用虚拟环境内的Python执行脚本,无需手动激活环境:
poetry run python importer.py
方法2:先激活虚拟环境再执行
- 激活当前项目的Poetry虚拟环境:
poetry shell
- 激活后直接运行脚本:
python importer.py
- 退出虚拟环境执行:
exit
方法3:直接使用虚拟环境的Python路径执行
- 查看虚拟环境中Python的绝对路径:
poetry run which python
- 用该路径执行脚本(示例路径,需替换为实际输出):
/home/ec2-user/.cache/pypoetry/virtualenvs/your-project-name/bin/python importer.py
额外检查项
- 确保你在
pyproject.toml所在的目录下执行了poetry add tqdm和poetry install命令,Poetry依赖当前目录的配置文件管理环境。 - 执行
poetry show tqdm,如果能输出tqdm的版本信息,说明依赖已成功安装在虚拟环境中。
内容的提问来源于stack exchange,提问作者godvlpr
相关产品推荐
相关产品推荐

