在编写python脚本时,为了追求便捷,会使用集成开发环境(IDE),但是当我只想写一个脚本,而没有项目管理需求时,就会出现软件包管理紊乱的情况
运行时各种不兼容问题层出不穷,在移动项目文件夹时再次打开python脚本甚至需要重新选择python解释器,但是我在用的时候就没有对每个具体解释器需要干什么进行详细规划,这就导致可能你以前安装过的软件包在移动文件后再次打开就无法使用了
更令人头疼的是,在pycharm这样的ide中使用pip安装新软件版时,居然不能用代理,就需要先手动关闭代理,再尝试下载,然后又报错,由此陷入了一个恶性循环,每次都需要为python环境的各种问题浪费时间
极大地降低了工作效率,为此需要制定一个合理的方案来解决这种问题
1, docker
使用docker可以谢绝这种问题,比如我的pwn环境就是用的docker,仅在我需要编写pwn脚本时,才会启用该环境,当我们需要使用特定的工具时,可以pull官方的docker镜像,但每次使用都必须启动docker
2,anaconda
Anaconda是一个可以对虚拟环境进行统一管理的python发行版工具。
conda的基本操作:
在windows操作系统下,使用Anaconda Prompt进入conda命令行操作界面
创建虚拟环境
1 | conda create -n env_name python=version package_names |
查看虚拟环境列表
1 | conda env list |
激活虚拟环境
env_name是具体的名字
1 | conda activate env_name |
运行后终端命令行前面的括号内改成了对应的env_name,说明该环境已经激活成功
修改环境名称
1 | conda rename -n 旧名称 新名称 |
需要先激活旧环境,在旧环境中创建新环境
删除环境
1 | conda remove -n env_name --all |
退出当前虚拟环境
1 | conda deactivate |
在虚拟环境下 安装包
#首先要先激活该虚拟环境
1 | conda activate env_name |
列出包
1 | conda list |
更新包
1 | conda update --all |
删除包
1 | conda remove package_name |
查找包
1 | conda remove package_name |
在cmd直接进入Anaconda Prompt
系统变量的path加上Anaconda和Anaconda/Scripts路径
然后输入activate即可进入
想要切换环境,依然用conda activate env_name