当前位置: 首页 > article >正文

Python 环境管理介绍

pip

pip 是 Python 的标准包管理工具,用于安装和管理 Python 软件包。它允许你从 Python 包索引(PyPI)下载并安装第三方库,并能自动解决依赖问题。

第三方库的安装与卸载

pip install <package>

pip uninstall <package>

pip 还支持安装指定版本的包:

pip install <package>==<version>

pip install requests==2.24.0

更新包:

pip install --upgrade <package-name>

查看

当前环境安装的列表

pip list

查看某个特定的包是否安装

pip show <package_name>

将当前环境安装的包输出到 requirements.txt 文件中

# 输出第三方库环境
pip freeze > requirements.txt

# 安装指定环境
pip install -r requirements.txt

Venv

venv 是 Python 3.3 及以上版本自带的虚拟环境管理工具,用于创建和管理隔离的 Python 环境。其提供了一种简单的方法确保项目依赖与系统环境和其他项目的依赖隔离开来避免冲突

Venv 环境的管理

一般创建 venv 虚拟环境是为每个项目单独创建,PyCharm 一般会自动为项目创建虚拟环境,文件都列在项目根目录的 .venv 文件夹中。

要手动创建虚拟环境,可以在项目根目录输入以下指令,创建一个 .venv 文件夹。一般前缀带 . 会被自动隐藏。

python -m venv .venv

激活环境

# Windows
.venv\Scripst\activate
# Linux
source .venv/bin/activate

第三方库的管理

venv 一般直接使用 pip 进行下载,激活虚拟环境后,PATH 等路径变量都被更改,此时使用 pip 对库进行更改都会更改当前虚拟环境。

下载包

pip install <package>

Anaconda

Anaconda 是一个开源的 Python 和 R 编程语言的发行版,主要用于数据科学、机器学习、人工智能和科学计算等领域。Anaconda 提供了独立环境并为项目使用。也就是多个项目如果背景一样可以使用同一个由conda管理的环境。

Conda 环境的管理

列出所有环境

conda env list # List all environments

创建环境

conda create --name <env_name> (python=<python_version>)

删除环境

conda env remove --name <env_name>

禁用终端自动初始化

conda config --set auto_activate_base false

环境的激活

conda activate <env>
conda deactivate

第三方库的管理

conda install <package>
conda install notebook numpy scikit-learn pandas matplotlib scipy opencv-python xgboost flask spacy plotly onnx onnxruntime


conda uninstall <package>

Mniconda

MinicondaAnaconda 的一个轻量级替代品。它是一个小型的包管理工具和环境管理系统,主要由 conda 包管理器和最小化的 Python 环境组成。与 Anaconda 不同,Miniconda 不预装大量的科学计算包,而是提供一个简洁的基础环境,用户可以根据自己的需求安装所需的包和工具。

以树莓派安装 Mniconda 为例:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-armv7l.sh

chmod +x Miniconda3-latest-Linux-armv7l.sh
./Miniconda3-latest-Linux-armv7l.sh

conda init
source ~/.bashrc

http://www.kler.cn/a/562340.html

相关文章:

  • Kafka客户端连接服务端异常 Can‘t resolve address: VM-12-16-centos:9092
  • QSNCTF-WEB做题记录(2)
  • 【STL】4.<list>
  • 车载诊断架构 --- LIN节点路由转发注意事项
  • smolagents学习笔记系列(六)Secure code execution
  • 文件上传漏洞学习笔记
  • VUE 获取视频时长,无需修改数据库,前提当前查看视频可以得到时长
  • 第15章-超声波避障功能 HC-SR04超声波测距模块详解STM32超声波测距
  • Fisher信息矩阵(Fisher Information Matrix, FIM)与自然梯度下降:机器学习中的优化利器
  • KafkaTool
  • 使用 Redis 实现分布式锁
  • P8597 [蓝桥杯 2013 省 B] 翻硬币
  • TCP fast open
  • 存储产品和数据库产品之间有没有竞争关系
  • 了解大模型LLM:部署、优化与框架
  • 原生php实现redis缓存配置和使用方法
  • Android构建系统 - 01 环境准备
  • 深度学习-130-RAG技术之基于Anything LLM搭建本地私人知识库的应用策略问题总结(一)
  • 电脑不能正常启动了怎么办?查看解决方法
  • SQLite 删除表