查看原文
其他

数据治理 | Python 环境冲突烦?环境移植难?我用 Miniconda

快点关注→ 数据Seminar 2022-12-31

目录

一、前言

二、从 Anaconda 到 Miniconda

三、安装 Miniconda

四、Miniconda 管理 Python 包

五、Miniconda 移植 Python 环境

六、结束语

本文共2994个字,阅读大约需要10分钟,欢迎指正!

Part1前言

Python 是不少社科栋梁想要学习的一门编程语言,但许多同学在安装和配置 Python 环境时就遇到各种问题。譬如某个第三方库不支持你的 Python 版本,或者某个库分别依赖另一个库的不同版本,而 Python 只能安装这个被依赖库的某一个版本。

更棘手的是,一些有特殊需求的用户(比如企研的云桌面用户)需要在无网络的虚拟机中部署 Python 并安装各种第三方库(所有第三方库都需要联网才能安装)。为了应对各种环境配置问题,用户们急需一个能够管理 Python 环境的工具。于是,Anaconda 出现了。

Part2从 Anaconda 到 Miniconda

非常多的 Python 入门者会被推荐使用 Anaconda,它是一个开源的 Python 发行版,提供了包管理和环境管理的功能,还包含了 condaPython 等 180 多个科学包及其依赖项,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换。许多新手安装 Anaconda 后就可以直接使用 Python 了,这当然很方便,可 Anaconda 是一个完备的套件,安装后体积超过 1 GB空间,运行起来很吃力。而且 Anaconda 中的 Python 包都是预安装的,如果你误用了老版本的 Anaconda,那么安装之后,你的 Python 包(第三方库)可能会是一些远古版本,导致无法使用部分新功能。

为了应对上述情况,Anaconda 的简化版——Miniconda 粉墨登场。它同样还包含 Anaconda 的核心组件 condaPython,体积却小了几倍(安装包仅几十兆)

讲到这里,我们来总结一下几种常见的 Python 安装方式:

安装方式优点缺点
官网下载 Python 安装包安装干净,占用空间很少需要手动配置环境变量,难以应对环境与环境冲突、包与包冲突、包与环境冲突等
安装 Anaconda可以应对 Python 环境冲突,预装了常用的包,功能齐全占用空间大、由于预装的包是固定的版本,需要安装较新版本
安装 Miniconda占用空间较少,可以应对 Python 环境冲突,功能够用没有预装 Python 包,功能不如 Anaconda 齐全

另外,Anaconda 拥有图形交互界面以及 Python 开发环境(如Jupyter notebook、Spider等),这对新手很友好,但也是一个巨坑。一方面,如果使用不好会导致你的代码乱成一窝蜂;另一方面,这些自带的开发环境并不优秀,我们可以安装更好用的工具。而 Miniconda 是小巧的,没有图形界面和开发环境,但我们可以在它提供的命令行中使用命令操作(用 Anaconda 也得这么干)。

Part3安装 Miniconda

我们前往 Miniconda 官方网站下载合适的安装包。为了稳定起见,这里下载了 Python 版本为 3.8 的 Miniconda 安装包。

https://docs.conda.io/en/latest/miniconda.html

下载后安装即可,安装过程中根据指引勾选选项即可,中途记得勾选添加环境变量。

安装完成后,可以在 Windows 开始菜单看到 Anaconda prompt(Miniconda)字样

点击运行它,会弹出类似于命令提示符的窗口。我们输入命令 python ,回车运行,当出现如下图所示字样,代表 Miniconda 安装成功,Python 也已经部署完成。

上图中 (base) 代表当前是默认的 Python 环境。C:\Users\Virtual 表示 Miniconda 安装的路径。Virtual 是笔者的计算机用户名。

Part4Miniconda 管理 Python 包

Miniconda 安装好后,我们就可以使用默认的 python 了。在 Miniconda 的命令窗口中使用 pip install xxx 命令(联网环境下)即可安装需要的包。如果没有安装其他 Python 版本的需要,可以一直使用该默认环境。

但是当我们需要安装另一个版本的 Python,或者想要重新装一个干净的 Python,Miniconda 的版本管理功能就可以派上用场了。我们可以使用它再安装新的 Python 环境,我们可以把除默认环境之外的 Python 环境称为虚拟环境,这些虚拟环境与默认环境之间被 Miniconda 隔离开,彼此不会影响。也不用担心虚拟环境占用过多的空间,因为一个新的虚拟环境仅占用约 100 MB 空间。

下面是 Miniconda 管理 Python 虚拟环境最常用的几个命令。

# 查看所有受 conda 管理的 python 环境,包括默认环境
conda info -e

# 创建新的虚拟环境,比如新建一个 Python 环境,取名“Newpy”, 版本号为 3.9
conda create -n Newpy python=3.9

# 进入、激活虚拟环境
conda activate Newpy

# 退出环境
conda deactivate

# 删除虚拟环境
conda remove -n Newpy --all

掌握以上命令,我们可以在一个计算机中安装不同版本的 Python,为不同的环境安装不同版本的包。这样一来,就可以避免 Python 版本冲突带来的麻烦。

Part5Miniconda 移植 Python 环境

Python 环境移植的使用场景比较多:

  • 换了新电脑,不想重新安装 Python 包了
  • 有人想省事儿,直接用我的 Python 环境
  • 在一台不联网的计算机中安装 Python 和包
  • ……

这对不会使用 conda 的小伙伴来说可是一件麻烦事儿,但是有了 conda,这件事就变得非常简单了。移植 Python 环境的步骤如下:

  1. 在移植环境和被移植环境的电脑中都安装好 Miniconda(安装过程无需联网),在移植环境的电脑中创建 Python 虚拟环境并安装好需要的包。

  2. 进入移植环境电脑中 Miniconda 的安装位置并进入 envs 文件夹,进入后即可看到我们创建的虚拟环境的文件夹,如下图所示:

  3. 将需要移植的虚拟环境文件夹复制到被移植电脑中对应的位置。

  4. 在被移植环境的电脑中激活被移植的环境后即可使用

    这样就成功移植了 Python 。

Part6结束语

本文阅毕,配置 Python 环境对你来说应该没有什么问题了,但我们还缺一个优秀的开发环境来优雅地进行编程。下期文章我们将会为大家介绍如何(离线)安装使用一款优秀的集成开发环境,并配合 Miniconda 使用不同版本的 Python

我们将在数据治理板块中推出一系列原创推文,帮助读者搭建一个完整的社科研究数据治理软硬件体系。该板块将涉及以下几个模块(点击标题即可跳转至相应合集):
  1. 计算机基础知识
  2. 编程基础
  3. 数据采集
  4. 数据存储
  5. 数据清洗
  6. 数据实验室搭建
  7. 数据治理特别篇



星标⭐我们不迷路!想要文章及时到,文末“在看”少不了!

点击搜索你感兴趣的内容吧

数据Seminar推荐搜索      基本无害数据清理

往期推荐


数据治理 | 如何用 Python 批量压缩/解压缩文件

“CCAD专项人才”招募计划 | 职等你来!

基本无害 | 专栏停更声明

数据治理 | 还在人工识别表格呢?Python 调用百度 OCR API 又快又准

基本无害 | 第四章第一节(全)— 工具变量和因果关系

基本无害 | 管用的工具变量——工具变量和因果关系(三)

数据治理 | csv 总乱码?教你三招,习一即可!




数据Seminar




这里是大数据、分析技术与学术研究的三叉路口


文 | 两米哥


    欢迎扫描👇二维码添加关注    

点击下方“阅读全文”了解更多

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存