筱团Blog筱团のBlog

Linux 冷知识

筱团·2022-01-25 16:42·79 次阅读

Linux 冷知识

① python -m pip

参考文章:Why you should use python -m pip

文章讲的是为什么下载库时最好用 python -m pip install 而不是 pip install,因为如果系统中存在多个 python,那么直接用 pip 下载可能会使库下的位置和你想的 python 版本位置对不上,而使用 python3.7 -m pip install 或者 python3.8 -m pip install 则可以明确的指定安装的位置。但如果你本身处于虚拟环境中,比如 anaconda、virtualenv / virtualenvwrapper 中,那么直接使用 pip 下载也是可以的(但是作者说最好还是 python -m pip install

PS:当你下载一些库时,提示使用 python -m pip install <pkn>,可能会报错 /bin/python: No module named pip,这时换成 python3 -m pip install <pkn> 就好了

② 创建独立虚拟 python 环境的神器: virtualenv 和 virtualenvwrapper

参考文章:Python三神器之virtualenv、virtualenvwrapper
官方网站:virtualenvvirtualenvwrapper

这俩神器的作用与 anaconda 类似(如果你听说过的话),建议在 Windows 上用 anaconda,在 Linux(或 WSL)上用 virtualenv / virtualenvwrapper
众所周知,Linux Ubuntu 自带两个版本的 python,分别是 python 2.7 和 python 3.8,那么虚拟环境的就是在已有版本的基础上上建立的
virtualenv 与 virtualenvwrapper 最大的不同,前者是在当前目录下创建文件夹,后者在用户目录($HOME/.virtualenvs)创建文件夹

下载方法

Copy
# virtualenv python3 -m pip install --user virtualenv python3 -m virtualenv --help # ------------------------------------------------- # virtualenvwrapper sudo pip install virtualenvwrapper # 在 ~/.zshrc 最下面添加以下内容 export WORKON_HOME=$HOME/.virtualenvs export PROJECT_HOME=$HOME/Devel source /usr/local/bin/virtualenvwrapper.sh VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 source ~/.zshrc # 在 /usr/local/bin/virtualenvwrapper.sh 中替换以下内容 # VIRTUALENVWRAPPER_PYTHON="$(command \which python)" --> VIRTUALENVWRAPPER_PYTHON="$(command \which python3)"

使用方法

Copy
# virtualenv virtualenv -p python2 venv # 在当前目录下建立虚拟环境文件夹 venv,版本为 python 2.7 virtualenv -p python3 --no-site-packages venv # 同上,但不依赖系统环境中的 site packages,且版本为 python 3.8 cd venv # 进入虚拟环境文件夹中 source bin/activate # 开启虚拟环境 deactivate # 退出虚拟环境 # ------------------------------------------------- # virtualenvwrapper workon # 列出虚拟环境列表 workon <envs> # 切换虚拟环境 mkvirtualenv -p python3 venv # 新建虚拟环境 venv,创建目录为 $HOME/.virtualenvs/,版本为 python 3.8 rmvirtualenv venv # 删除虚拟环境 deactivate # 离开虚拟环境

PS:如果你只是想使用不同的 python 版本运行脚本,只需要切换使用 python name.pypython3 name.py 即可

③ pipx

参考文章:Pipx:在隔离环境中安装和运行 Python 应用
官方网站:pipx

pipx 可以为每一个 PyPI 托管中的库单独生成一个虚拟环境,适用于测试某个库时,一键安装并测试,用完即删
好处是运行不需要 sudo 权限,下载的库也是最新版本,甚至可以不用下载直接测试某网站上的库或者 .py 脚本
注意,它和 pip 没有半毛钱关系,即运行不会影响到你所有的程序

Copy
# 下载方法 python3 -m pip install --user pipx -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com python3 -m pipx ensurepath sudo apt install python3.8-venv # 使用方法 pipx list # 查看所有已安装的应用 pipx install <pkn> # 下载特定应用 pipx uninstall <pkn> # 卸载特定应用 pipx upgrade <pkn> # 更新特定应用 pipx upgrade-all # 更新全部应用 pipx run pycowsay moooo # 直接运行某个库,不用下载 pipx run <website>.<pyn>.py

PS:你可能会说,啊,既然能直接运行库和脚本,为什么要下载呢?这是因为有的测试可能同时需要多个库,单独运行某个库完成不了

posted @   筱团  阅读(79)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示