在 Jupyter Notebook 和 Python 中使用虚拟环境

目录

  • 使用 Virtualenv/venv 创建虚拟环境
  • 使用 Anaconda 创建虚拟环境
  • 将虚拟环境添加到 Jupyter Notebook
  • 从 Jupyter Notebook 中删除虚拟环境

 

在我们开始之前,什么是虚拟环境?为什么需要它?虚拟环境是 Python 的一个独立工作副本。这意味着每个环境可以有自己的依赖项,甚至有自己的 Python 版本。如果您需要不同版本的 Python 或不同项目的软件包,这很有用。这还可以在测试软件包时保持整洁,并确保主要 Python 安装保持健康。

使用 Virtualenv/venv 创建虚拟环境

Python 中常用的虚拟环境工具是virtualenv。从 Python 3.3 开始,virtualenv 的一个子集已集成到 Python 标准库中的venv模块下。如果您使用的是 Python 2,则可以使用以下命令安装 virtualenv:

pip install --user virtualenv

现在,你可以使用以下命令创建虚拟环境:

virtualenv myenv

其中myenv可以替换为您想要的虚拟环境名称。虚拟环境可以在myenv文件夹中找到。对于 Python >= 3.3,您可以使用以下命令创建虚拟环境:

python -m venv myenv

创建虚拟环境后,可以使用以下命令激活虚拟环境:

source myenv/bin/activate

要停用虚拟环境,您可以运行deactivate。要删除虚拟环境,您只需删除包含虚拟环境的文件夹(例如rm -r myenv)。有关更多信息,请阅读virtualenv 文档venv 文档

使用 Anaconda 创建虚拟环境

让我们看看如何使用Anaconda创建虚拟环境。Anaconda 是一个 Python(和 R)发行版,旨在简化科学计算的包管理和部署。安装后,可以使用以下命令创建 conda 虚拟环境:

conda create -n myenv

其中myenv是您的新环境的名称。如果您想要一个不是当前版本的特定 Python 版本,您可以输入:

conda create -n myenv python=3.6

然后,环境将存储在envsAnaconda 目录中的文件夹中。创建环境后,您可以通过键入以下内容来激活它:

conda activate myenv

如果您现在运行python,您将看到您处于新创建的虚拟环境中。要停用环境,您可以键入conda deactivate,然后可以使用 列出计算机上所有可用的环境conda env list。要删除环境,您可以键入:

conda env remove -n myenv

创建环境后,除了 conda 已安装的软件包外,您还可以安装所需的软件包。您可以在本用户指南中找到有关如何管理 conda 环境的更多信息。

将虚拟环境添加到 Jupyter Notebook

Jupyter Notebook 确保 IPython 内核可用,但您必须手动添加具有不同版本 Python 或虚拟环境的内核。首先,确保您的环境已使用 激活conda activate myenv。接下来,安装为 Jupyter 提供 IPython 内核的ipykernel :

pip install --user ipykernel

接下来,您可以通过输入以下命令将虚拟环境添加到 Jupyter:

python -m ipykernel install --user --name=myenv

这应该打印以下内容:

Installed kernelspec myenv in /home/user/.local/share/jupyter/kernels/myenv

如果您正确完成所有操作,您将在此文件夹中找到一个kernel.json文件,其外观应如下所示:

{
 "argv": [
  "/home/user/anaconda3/envs/myenv/bin/python",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "myenv",
 "language": "python"
}

就这些了!现在您可以选择 conda 环境作为 Jupyter 中的内核。以下是它在JupyterLab中的样子:

Jupyter 虚拟环境

从 Jupyter Notebook 中删除虚拟环境

删除虚拟环境后,您还需要将其从 Jupyter 中删除。我们首先看看哪些内核可用。您可以使用以下命令列出它们:

jupyter kernelspec list

这应该返回类似这样的内容:

Available kernels:
  myenv      /home/user/.local/share/jupyter/kernels/myenv
  python3    /usr/local/share/jupyter/kernels/python3

现在,要卸载内核,您可以输入:

jupyter kernelspec uninstall myenv
posted @ 2024-07-22 17:27 gaussen126 阅读(1392) 评论(0) 推荐(0) 编辑
摘要: pyspark mysql tutorial 阅读全文
posted @ 2024-07-15 18:08 gaussen126 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 数据分析 分析方法 统计分析 阅读全文
posted @ 2023-05-22 15:25 gaussen126 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 特征工程 阅读全文
posted @ 2023-05-22 15:05 gaussen126 阅读(125) 评论(0) 推荐(0) 编辑
摘要: flink CEP 复杂事件处理 阅读全文
posted @ 2023-05-18 14:59 gaussen126 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 一、数据治理语境关系图 1、数据管理和数据治理 在正式讲数据治理之前,先区分下数据管理和数据治理的区别。数据管理的整体驱动力是确保组织可以从其数据中获得价值,更多是总体战略的层面;数据治理聚焦于如何制定有关数据的决策,以及人员和流程在数据方面的行为方式,更多是细节执行层面。 2、数据治理整体介绍 数 阅读全文
posted @ 2023-05-04 16:21 gaussen126 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 数据管理是DMBOK的第一章,该章高度概括了整本书的内容,梳理了数据管理的领域、环境因素、基本原则、实现路径等知识内容。有关DABOK的综述和学习方法可以参考:DAMA数据管理知识体系指南(0):综述 & 学习指南。 一、数据管理的原则 1、整体原则解读 上图已经基本表达了在数据管理过程中,所需要遵 阅读全文
posted @ 2023-05-04 16:12 gaussen126 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 我们,数据管理专业人员,经常使用术语“数据管理框架”。但是我们对它的含义和实现它的各种方法是否都具有相同的理解? 在本文中,我们将 讨论现有的数据管理框架 呈现各种框架的使用情况 定义术语“数据管理框架”。 说明建立数据管理框架的通用方法 现有的数据管理框架 DAMA 数据管理知识体系指南和 DCA 阅读全文
posted @ 2023-05-04 15:36 gaussen126 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 什么是数据科学? 数据科学研究数据以提取对业务有意义的洞察。这是一种多学科的方法,可将数学、统计数据、人工智能以及计算机工程等领域的原则和实践结合起来,进而分析大量数据。此分析可帮助数据科学家提出和回答如下问题:发生了什么、为什么发生、将发生什么以及结果可以做什么。 数据科学为何如此重要? 数据科学 阅读全文
posted @ 2023-05-04 14:53 gaussen126 阅读(196) 评论(0) 推荐(0) 编辑
摘要: spark 开发实例 流处理 阅读全文
posted @ 2023-04-06 16:57 gaussen126 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 主数据 参考数据 数据治理 企业数字化治理 阅读全文
posted @ 2023-03-21 15:27 gaussen126 阅读(846) 评论(0) 推荐(0) 编辑
摘要: spark 流计算 join 水印 窗口 spark structured streaming 阅读全文
posted @ 2022-12-13 17:13 gaussen126 阅读(541) 评论(0) 推荐(0) 编辑
摘要: 数仓模型 数仓建模 阿里 转载 阅读全文
posted @ 2022-11-23 15:11 gaussen126 阅读(314) 评论(0) 推荐(0) 编辑
摘要: canal kettle pentaho 阅读全文
posted @ 2022-11-11 16:55 gaussen126 阅读(1142) 评论(0) 推荐(0) 编辑
摘要: 数据仓库 数据集市 ELT 阅读全文
posted @ 2022-10-20 14:33 gaussen126 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 数据职场 数据类岗位 数据职能划分 数据类岗位分类 阅读全文
posted @ 2022-10-14 10:49 gaussen126 阅读(526) 评论(0) 推荐(0) 编辑
摘要: CDH部署 阅读全文
posted @ 2022-07-22 19:39 gaussen126 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 1,对比表: RDD Dataframe Dataset 版本 1.0 1.3 1.6 描述 分布式数据集合 行列化的分布式数据集合 RDD 和 DataFrame的结合 数据格式 结构化和非结构化都可以 结构化和半结构化都可以 结构化和非结构化都可以 数据源 多种 多种 多种 不变性和互通性 容易 阅读全文
posted @ 2022-07-06 15:01 gaussen126 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 并发编程 多线程 阅读全文
posted @ 2022-06-30 12:10 gaussen126 阅读(159) 评论(0) 推荐(0) 编辑
摘要: SQL 阅读全文
posted @ 2022-06-30 01:58 gaussen126 阅读(2786) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示