一、安装Python
从Python官网下载并安装。
二、开发包和环境管理器
pip
pip 是 Python 的包管理工具,用于安装和管理Python包。
conda
Conda是一个开源的包管理器和环境管理器,主要用于Python和R等编程语言。它能够帮助您轻松安装、更新和管理软件包及其依赖项。Conda最初由Anaconda公司(前Continuum Analytics)开发,主要用于科学计算和数据科学领域,但现在已广泛应用于各种Python和R语言的项目中。
conda和pip主要区别
pip不支持创建Python虚拟环境,得安装了virtualenv包才可以,而conda是支持创建Python虚拟环境的。conda经常作为一个配置隔离python环境的工具。
Pip和conda在如何实现包工作环境中的依赖关系方面也有所不同。安装包时pip在递归的串行循环中安装依赖项,没有努力确保同时满足所有包的依赖关系。如果在顺序中较早安装的包,相对于在顺序后面安装的包,具有不兼容的依赖版本,这可能会导致环境以微妙的方式被破坏。相比之下,conda 使用可满足性(SAT)求解器来验证是否满足环境中安装的所有软件包的所有要求。此检查可能需要额外的时间,但有助于防止创建损坏的环境。只要关于依赖项的包元数据是正确的,conda 就可以预见地产生工作环境。
Conda的主要功能
- 安装和更新软件包:Conda可以很容易地安装、更新、移除软件包以及依赖项。支持从Anaconda库、conda forge、以及自定义包库中安装包。
- 创建和管理虚拟环境:通过创建独立的虚拟环境,使同一计算机上可以同时存在不同的包版本和配置,避免产生不必要的冲突,并且可以允许用户随意进行环境切换。
- 跨平台支持:Conda在Windows、macOS和Linux系统上都适用,允许开发者和科学家们在不同的操作系统上迁徙项目。
Conda的安装
Conda通常作为Anaconda或Miniconda发行版的一部分安装。您可以从官方网站下载并安装Anaconda或Miniconda。
官网下载Conda
Download Anaconda Distribution | Anaconda
配置环境变量Path
加入已安装的anaconda3\Scripts目录到环境变量Path中,例如:D:\APP2\anaconda3\Scripts。
查看版本信息
conda --version
conda 24.7.1
查看配置信息
conda info
active environment : None
shell level : 0
***\*user config file : C:\Users\<user>\.condarc\****
ulated config files : C:\Users\<user>\.condarc
conda version : 24.7.1
conda-build version : 24.5.1
python version : 3.12.4.final.0
solver : libmamba (default)
virtual packages : __archspec=1=icelake
__conda=24.7.1=0
__win=0=0
base environment : D:\APP2\anaconda3 (read only)
conda av data dir : *D:\APP2\anaconda3\etc\conda*
nda av metadata url : None
channel URLs : https://repo.anaconda.com/pkgs/main/win-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/win-64
https://repo.anaconda.com/pkgs/r/noarch
https://repo.anaconda.com/pkgs/msys2/win-64
https://repo.anaconda.com/pkgs/msys2/noarch
package cache : D:\APP2\anaconda3\pkgs (开发包缓存目录)
C:\Users\<user>\.conda\pkgs
C:\Users\<user>\AppData\Local\conda\conda\pkgs
directories : C:\Users\<user>\.conda\envs (虚拟环境缓存目录)
D:\APP2\anaconda3\envs
C:\Users\<user>\AppData\Local\conda\conda\envs
platform : win-64
user-agent : conda/24.7.1 requests/2.32.2 CPython/3.12.4 Windows/11 Windows/10.0.22631 solver/libmamba conda-libmamba-solver/24.1.0 libmambapy/1.5.8 aau/0.4.4 c/. s/. e/.
administrator : False
netrc file : None
offline mode : False
查看配置项
conda config –show pkgs_dirs
conda config –show envs_dirs
修改配置文件
C:\Users<user>.condarc
channels:
- defaults
pkgs_dirs:
- D:\APP2\anaconda3\pkgs
- D:\Work-Data\conda3\pkgs
envs_dirs:
- D:\APP2\anaconda3\envs
- D:\Work-Data\conda3\envs
修改配置文件后,可查看配置项的修改是否已生效。
默认更新Python的安装
当你安装 Anaconda 或 Miniconda 时,通常会默认升级安装一个 Python 版本。如果你不希望安装 Python,也可以手动指定安装 Conda 环境时不包含 Python,但这种情况较少见。因为conda自带了Python。Conda是一个包含了Python解释器、Conda包管理器和一系列科学计算包的发行版。
例如使用安装包:Anaconda3-2024.06-1-Linux-x86_64.sh,在Linux文件目录为/opt/app/conda3/下安装conda,通过which查找python可执行文件在系统中的位置:
(base) [root@lenovo-g5050 opt]# which python
/opt/app/conda3/bin/python
(base) [root@lenovo-g5050 opt]# which python3
/opt/app/conda3/bin/python3
(base) [root@lenovo-g5050 opt]# which conda
/opt/app/conda3/bin/conda
(base) [root@lenovo-g5050 opt]# python --version
Python 3.12.4
三、Conda使用示例
以下是使用Conda的一些基本命令示例:
创建新环境
conda create –name myenv python=3.8
激活环境
conda activate myenv
列出所有环境
conda env list
删除环境
conda env remove –name myenv
安装包
conda install numpy pandas matplotlib
列出已安装的包
conda list
更新包
conda update pandas
删除包
conda remove matplotlib
通过这些功能,Conda为Python和R语言的开发者提供了一个强大而灵活的工具来管理项目依赖和环境,使得创建和维护项目环境变得更加容易和可复制。
搜索可用包
conda search
是一个用于在 Conda 包管理器中搜索可用包的命令。通过这个命令,你可以查找特定名称或包含特定关键字的包,以及查看这些包的不同版本和构建信息。以下是 conda search
命令的基本用法和一些常用选项:
conda search [package_name]
–info:显示有关包的详细信息,包括依赖关系、构建选项等。
例如,要搜索名为 numpy
的包,可以运行:
conda search numpy --info
这将列出所有可用的 numpy
包及其版本。
新增清华数据源(可选)
对于部分国内用户无法访问Anaconda官方数据源,可通过以下命令行新增清华数据源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
在VS Code使用Conda虚拟环境
打开VS Code。
按 Ctrl+Shift+P 打开命令面板。
输入 Python: Select Interpreter 并选择你刚刚创建的Conda虚拟环境。VS Code会列出所有可用的Python解释器,你应该能看到类似于conda|envs|myenv|python.exe的选项。
四、查看包依赖关系
pip show
pip show
命令用于显示已安装的Python包的详细信息
以下是一些pip show
命令的常用选项:
pip show <package_name>
:显示指定包的详细信息。pip show --files <package_name>
:显示指定包的文件列表。pip show --files
:显示所有已安装包的文件列表。pip show --outdated
:显示所有已过期的包。pip show --format=<format>
:指定输出格式,可以是text
、json
或properties
。
例如,要显示名为Pillow
的包的详细信息,可以使用以下命令:
pip show Pillow
Name: Pillow
Version: 8.3.1
Summary: Python Imaging Library (Fork)
Home-page: https://python-pillow.org
Author: Alex Clark (PIL Fork Author)
Author-email: aclark@python-pillow.org
License: HPND
Location: d:\app-data\conda3\envs\tensorflow114-p36\lib\site-packages
Requires:
Required-by: scikit-image, matplotlib, imageio
输出结果将包括包的名称、版本、描述、作者、许可证、依赖项等信息。
需要注意的是,pip show
命令只能显示已安装的包的信息,如果指定的包未安装,则会显示错误信息。
conda-tree
conda-tree
是一个第三方工具,可以用来显示 Conda 包的依赖树。首先,你需要安装 conda-tree
:
conda install -c conda-forge conda-tree
然后,你可以使用以下命令查看特定包的依赖关系:
conda-tree depends package_name
将 package_name
替换为你想要检查的包名。
例如,查看ultralytics包和其他包的依赖关系:
conda-tree depends ultralytics
输出:
matplotlib-base
numpy
opencv
pandas
pillow
psutil
py-cpuinfo
python
pyyaml
requests
scipy
seaborn
tqdm
根据输出的包依赖信息,ultralytics依赖opencv。