导入后找不到passlib模块?conda环境已安装却无法识别求助
解决passlib已安装但Python无法识别的问题
指定脚本使用conda环境的Python解释器
系统默认Python可能不是conda环境版本,导致找不到包。先在激活的conda环境中执行which python,得到类似/xxx/miniconda3/envs/your_env/bin/python的路径,然后将bash脚本第一行改为:#!/xxx/miniconda3/envs/your_env/bin/python或者在脚本中先激活conda环境再运行程序:
#!/bin/bash source /xxx/miniconda3/bin/activate your_env python your_fastapi_app.py确认conda环境已正确激活
运行脚本前,先在终端执行conda activate your_env激活目标环境,再手动运行Python脚本,排查是否是脚本执行时环境未激活的问题。验证passlib的可导入性
在激活的conda环境中打开Python交互终端,输入import passlib:- 若无报错,说明包本身正常,问题出在脚本执行环境;
- 若报错,执行强制重装命令修复损坏的安装:
conda install --force-reinstall passlib=1.7.4 -c conda-forge
排查脚本中的环境冲突
检查bash脚本内是否设置了PYTHONPATH变量,或者是否有激活其他虚拟环境的命令,这些可能会覆盖conda环境的包路径。
内容的提问来源于stack exchange,提问作者Alex McGraw
相关产品推荐
相关产品推荐

