pipenv创建virtualenv后出现FileNotFoundError:指定Python文件不存在
问题分析与解决方法
可能的原因
- 虚拟环境软链接未正确生成:virtualenv创建虚拟环境时,可能只生成了
python3或python3.10可执行文件,未自动创建指向它们的python软链接,导致pipenv找不到预期的python路径。 - Pipenv与virtualenv版本兼容问题:即便旧版本的类似问题已修复,当前环境中pipenv和virtualenv的版本组合仍可能存在适配bug。
- 目录权限不足:创建虚拟环境时,因权限限制导致部分文件(如软链接)未成功生成。
解决步骤
检查虚拟环境bin目录内容
执行命令查看目标目录下的可执行文件:ls -la /home/user/.local/share/virtualenvs/project-xxxxxxxx/bin/如果能看到
python3或python3.10,手动创建python软链接:ln -s python3.10 /home/user/.local/share/virtualenvs/project-xxxxxxxx/bin/python之后再尝试使用pipenv。
升级pipenv和virtualenv
更新到最新版本,修复可能存在的兼容性问题:pip install --upgrade pipenv virtualenv升级完成后,删除旧虚拟环境重新创建:
pipenv --rm pipenv --python 3指定完整Python路径创建虚拟环境
避免使用模糊的python 3,直接指定系统中Python的完整路径:pipenv --python /usr/bin/python3.10检查并修复目录权限
确保虚拟环境存放目录有足够的读写权限:chmod -R 755 /home/user/.local/share/virtualenvs/之后重新创建虚拟环境。
内容的提问来源于stack exchange,提问作者Semnodime
相关产品推荐
相关产品推荐

