安装使用Python和Conda

一、安装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>:指定输出格式,可以是textjsonproperties

例如,要显示名为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。

发表评论