使用pipx来运行独立的python应用

它是一个自由开源程序,允许你在隔离的虚拟环境中安装和运行 Python 应用。
– Sk(作者)

1. 背景

python有很多库是支持click直接运行的(例如tox),一般都是通过pip直接安装到了默认的py的site-packages目录中去了。如果安装了很多这种库,难免会有相互的依赖影响。

pipx便可以很好的解决这个问题,它会为每一个库创建只属于它的虚拟运行化境,从而避免了不同库之间的相互影响。

2.安装并配置

  1. 使用pip进行安装

    1
    pip install pipx
  2. 设置环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    在环境变量中添加以下内容:

    # pipx的家目录,以后通过pipx安装所使用的虚拟环境都会在这里
    PIPX_HOME D:\Program Files\pipx\

    # pipx的bin目录,一般在home底下
    PIPX_BIN_DIR D:\Program Files\pipx\bin

    # pipx的缓存地址,默认实在C盘用户目录
    PIPX_VENV_CACHEDIR E:\TEMP\cache\pipx\cache

    image-20230424225443612
    path中要把pipx的bin目录加进去

    image-20230424225924794

3. pipx的使用

和pip的用法基本一直

  1. 安装 Python 包

    1
    2
    3
    4
    5
    6
    7
    $ pipx install cowsay
    installed package cowsay 2.0.3, Python 3.6.8
    These binaries are now globally available
    - cowsay
    done! ✨ ✨

    安装完后,即可直接使用 cowsay
  2. 列出通过pipx安装的Python 包

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $ pipx list

    venvs are in D:\Program Files\pipx\venvs
    apps are exposed on your $PATH at D:\Program Files\pipx\bin
    package pipenv 2021.5.29, Python 3.8.10
    - pipenv-resolver.exe
    - pipenv.exe
    package poetry 1.1.6, Python 3.8.10
    - poetry.exe
    package tox 3.25.0, Python 3.8.10
    - tox-quickstart.exe
    - tox.exe

  3. 卸载软件包

    1
    pipx uninstall cowsay