如何确保新安装的Python包不干扰Linux服务器现有流水线?
Python环境隔离与包管理问题解答
如何避免修改Python环境干扰流水线?
最稳妥的方式是用Python虚拟环境隔离你的软件依赖,完全不会影响系统全局环境和流水线的独立环境。步骤如下:
- 创建虚拟环境:选一个你有权限的目录(比如个人home目录),执行命令:
python3 -m venv ~/my_report_env - 激活虚拟环境:
激活后命令行前缀会变成source ~/my_report_env/bin/activate(my_report_env),此时所有pip3安装的包都会被放到这个虚拟环境里,和系统环境完全隔离。 - 在激活的虚拟环境里执行手册里的
pip3 install numpy bokeh bs4命令即可。 - 用完后执行
deactivate就能退出虚拟环境。
安装包后出现问题能否卸载?
当然可以卸载,分两种情况处理:
- 如果是在虚拟环境里安装的:激活对应的虚拟环境后,执行命令:
按提示输入pip3 uninstall numpy bokeh bs4y确认即可,卸载后虚拟环境会恢复到之前的状态。 - 如果不小心装到了全局环境:直接执行上面的卸载命令(无需激活虚拟环境)。因为流水线有独立环境,只要它们不依赖全局的这些包,卸载就不会有影响;如果担心,可以先执行
pip3 list查看全局已安装的包版本,确认后再操作。
服务器已安装Python 3.6.8,是否只需执行pip3 install步骤?
建议不要跳过第一步的部分操作,具体看情况:
- 先检查
pip3是否存在:执行pip3 --version,如果能正常输出版本信息,说明已经装了python3-pip,可以跳过这部分;如果提示命令不存在,需要执行sudo apt install python3-pip安装。 - 必须安装
libjpeg-dev和zlib1g-dev:这两个是系统级依赖库,很多Python可视化或图像处理相关的包(比如bokeh依赖的底层库)编译时需要它们,不装可能导致pip3 install失败。所以务必执行:sudo apt install libjpeg-dev zlib1g-dev - 确认上述依赖都齐全后,再在虚拟环境里执行
pip3 install numpy bokeh bs4。
内容的提问来源于stack exchange,提问作者pythonbeginner
相关产品推荐
相关产品推荐

