删除在python3中使用venv创建的虚拟环境

xdnvmnnf  于 2023-01-27  发布在  Python
关注(0)|答案(5)|浏览(403)

如何删除使用创建的虚拟环境

python3 -m venv <name>

我可以删除目录吗?
这似乎是一个谷歌应该很容易回答的问题,但我只找到了删除使用virtualenvpyvenv创建的环境的答案。

vdgimpew

vdgimpew1#

是的,删除目录。它是保存venv的可执行文件、模块、库和其他所有东西的地方。

ruarlubt

ruarlubt2#

如果您的环境处于活动状态,则应先将其停用。不确定不停用是否会导致任何问题,但这是正确的方法。停用后,您只需删除虚拟环境目录即可。
要停用活动环境,只需执行“deactivate”bash命令。

l7mqbcuq

l7mqbcuq3#

在使用python3 -m venv .或其他工具创建的venv项目文件夹中,运行以下命令删除venv文件:

rm -r bin include lib lib64 pyvenv.cfg share

如果使用source bin/activate时仍在venv中,请首先运行deactivate
然而,根据this page,我们应该始终使用python3 -m venv .venv,这样venv文件就可以整齐地包含在项目根目录下的一个.venv文件夹中,这样Visual Studio Code Python扩展也可以找到/使用它。

tgabmvqs

tgabmvqs4#

要在WINDOWS中删除环境,请确保您处于激活的环境中:

$ deactivate

这将停用您当前的环境。现在您可以转到您的文件夹所在的目录。手动删除它。完成!
要创建一个新环境,只需从bash:

$ python3 -m venv venv

要激活它:

$ source venv/bin/activate
db2dz4w8

db2dz4w85#

没有内置的方法可以删除使用python3 -m venv <name>创建的virtualenv。例如,如果您在/usr/local中创建了python3.6 virtualenv,则可以使用Ansible剧本删除它,如下所示:

---
- name: Remove virtualenv
  hosts: all

  vars:
    venv: /usr/local

    virtualenv_files:
      - pyvenv.cfg
      - bin/activate
      - bin/activate.csh
      - bin/activate.fish
      - bin/easy_install
      - bin/easy_install-3.6
      - bin/pip
      - bin/pip3
      - bin/pip3.6
      - bin/python
      - bin/python3
      - bin/python3.6
      - bin/wheel
      - lib/python3.6/site-packages

  tasks:

  - name: Freeze virtualenv
    shell: |
      set -e
      source "{{ venv }}/bin/activate"
      pip3 freeze > /tmp/frozen
    args:
      creates: /tmp/frozen
    register: frozen
    failed_when: false

  - name: Remove site-packages from virtualenv
    when: frozen.rc == '0'
    become: true
    shell: |
      set -e
      source {{ venv }}/bin/activate
      pip3 uninstall -y -r /tmp/frozen

  - name: Remove virtualenv_files
    become: true
    file:
      path: "{{ venv }}/{{ item }}"
      state: absent
    loop: "{{ virtualenv_files }}"

相关问题