pyenv 使用正确的 python 版本但使用错误的库文件夹

pyenv using right python version but using wrong libraries folder

你好,我目前 运行 3.8 python。我需要执行一个使用 Crypto 和时间库的 3.6 版本脚本。 所以我安装了pyenv和pyenv-virtualenv。 我安装了我想要的 python 版本:pyenv install 3.6.8。 然后我去了我的项目文件夹cd Documents/CSC/myProject/。 我执行了:pyenv local 3.6.8。我验证了 pip 版本:pip 18.1 from /home/alex/.pyenv/versions/3.6.8/lib/python3.6/site-packages/pip (python 3.6) . 没关系。然后我在 3.6 版本上安装了 Crypto。 但是当我 运行 脚本时出现以下错误: File "/usr/lib/python3.8/site-packages/Crypto/Random/_UserFriendlyRNG.py", line 77, in collect t = time.clock() AttributeError: module 'time' has no attribute 'clock' 为什么 python 搜索 3.8 版本的加密,即使我在本地有 3.6 版本。 当我在 3.6 版本的文件夹中时? 我有点困惑。 感谢您的帮助:)

不确定是什么导致了问题,但我建议您改用 pipenv。我个人认为它更可靠,更简单 您可以使用 pip install pipenv 安装它,然后执行 pipenv shell 来使用它。 阅读更多相关信息 here