我在使用 pip 时遇到问题。
因为我用的是pyenv,用的是python 3.7.x,所以pip没有问题。
@bot.command()
async def embed(ctx, colour, title, description, *,url):
await ctx.message.delete()
embed=discord.Embed(colour=colour, title=title, type='rich', description=description, url=url, timestamp=None)
await ctx.send(embed=embed)
但是使用 python 3.6.x 版,我得到的结果是 pip 位于“~/.local”,而不是“~/.pyenv”。
这对我来说非常糟糕。因为我现在需要的版本是3.6.x。
如果我安装其他 python 3.6 版本,这种不全面的 pip 行为会继续,所以 python 3.6.12 和 3.6.11 将显示相同的路径。
我猜这个bug很可能是因为本地安装的python和pyenv安装的某种冲突。
$ /home/yuis/.pyenv/shims/pip --version
pip 19.2.3 from /home/yuis/.pyenv/versions/3.7.6/lib/python3.7/site-packages/pip (python 3.7)
现在,我不再关心 pip 了,因为它似乎是一个无法解决的问题。没时间浪费。所以现在我想尝试使用 virtualenv。
我需要先安装virtualenv,因为我可以看到这个错误。
$ /home/yuis/.pyenv/shims/pip --version
WARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip.
Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue.
To avoid this problem you can invoke Python with '-m pip' instead of running pip directly.
pip 20.3.3 from /home/yuis/.local/lib/python3.6/site-packages/pip (python 3.6)
但是以下两种方法都不起作用。
$ virtualenv venv
pyenv: virtualenv: command not found
The `virtualenv' command exists in these Python versions:
3.5.10
3.7.6
Note: See 'pyenv help global' for tips on allowing both
python2 and python3 to be found.
现在我不知道我的机器上发生了什么以及如何解决这个问题。
答案 0 :(得分:1)
你试过python -m virtualenv .venv
吗?
答案 1 :(得分:0)
试试这个吧,
pip install git+https://github.com/pypa/virtualenv.git@main
您可以访问此link了解更多详情,
还要确保您的 python 和 conda env 已正确配置并添加到 PATH