Jupyter Notebook使用教程——从Anaconda环境构建到Markdown、LaTex语法介绍

0. 前言

按照国际惯例,首先声明:本文只是我自己学习的理解,虽然参考了他人的宝贵见解及成果,但是内容可能存在不准确的地方。如果发现文中错误,希望批评指正,共同进步。

你是否在视频教程或说明文档或Github或其他场景中见过下面这类东东?

在这里只要在[in]中输入代码,在[out]中就会即时显示输出,更关键的是不用安装任何IDE就可以直接运行代码!这个牛13哄哄的东东就是——Jupyter Notebook。

 IDE,集成开发环境(Integrated Development Environment)是一种综合性的应用程序,它集成了代码编写、编译、调试、版本控制、项目管理和构建工具等多种功能于一身,为开发者提供了一个便捷高效的一站式开发平台,例如下面这些“编写语言的软件”:

本文将系统地介绍Jupyter Notebook的使用方法,涵盖:Anaconda的环境构建、数据库导入、Markdown语法、Jupyter Notebook使用实例、.ipynb文件导入等几个方面。

本文的介绍全部通过图形界面进行,没有命令提示符窗口操作

1. Jupyter Notebook

1.1 Jupyter Notebook简介

Jupyter是一个开源的交互式计算环境,它允许用户创建和共享包含实时代码、方程式、可视化图表和文本说明的文档。这些文档通常被称为“Notebooks”,它们是一个基于Web的应用程序,可以在浏览器中运行,并支持超过40种编程语言,包括但不限于Python、R、Julia等。

Jupyter Notebook融合了实时代码执行、富文本编辑、数据可视化和数学公式支持等功能于一体。用户可在不安装任何软件的前提下,使用单一网页界面编写、运行多种编程语言的代码,并即时查看输出结果。它支持Markdown文档撰写,有利于项目协作、学术研究与教学演示,通过集成众多科学计算库加强了数据科学工作流的效率。Jupyter Notebook有以下好处:

  • 编写可执行代码:在单元格内编写代码片段,实时查看结果;
  • 交互式数据分析:对数据进行清理、转换、探索性分析及可视化;
  • 动态报告:将代码、文字、数学公式和图形结合在一起,形成丰富的文档,便于协作和演示;
  • 教学与学习资源:作为教材或教程,方便学生直接在文档中运行示例代码并观察输出;
  • 版本控制与分享:Notebooks 可以通过GitHub等工具进行版本控制,并方便地分享给他人审阅或复现研究结果;

Jupyter 还拥有强大的生态系统,其中包括 JupyterLab,这是一个下一代交互式开发环境,提供了更为灵活和模块化的界面来处理Notebooks以及其他文件类型。此外,JupyterHub 和 Binder 等项目则支持多用户环境和基于云的Notebook托管服务。

1.2 Jupyter Notebook启动方式

Jupyter Notebook启动有以下两种方式:

①不安装任何软件,直接通过Jupyter官网试用网页版:Intro (jupyter.org)

②先安装Anaconda,然后通过本地应用打开Jupyter Notebook:

启动后也是在网页中,点击“New-->Notebook-->选择kernel”即可创建新的Notebook文档:

这里需要解释下Jupyter Notebook中的kernel:

在Jupyter Notebook(以及其后续版本JupyterLab)中,Kernel是指运行和执行用户代码的计算后端。当你打开一个Notebook并开始编写代码时,Notebook并不是直接执行这些代码,而是通过与一个后台进程(即Kernel)进行通信来执行和获取结果。

具体来说,Kernel代表了一个特定编程语言的解释器或编译器环境,例如Python、R、Julia等。每个Kernel都对应着一个独立的运行环境,其中包含了所有相关的库和依赖包。

这里我推荐通过第②种方法启动Jupyter Notebook,但是可能就有同学会困惑了:上面不是说使用Jupyter Notebook的好处是可以避免安装IDE吗?下面是我自己总结的先安装Anaconda的好处:

  • 相比通过Jupyter官网进入试用版,通过本地安装启动Notebook代码运行更快(试用版经常会卡住不动);
  • 相比IDE的安装,Anaconda的安装及配置要容易得多(反正对于环境管理等方面,Anaconda都是必须的);
  • 试用版Notebook有很多限制,例如不能上传和打开Jupyter Notebook生成的.ipynb文件

2. Anaconda

Anaconda 是一个开源的数据科学平台,它提供了一个强大的软件包管理系统——Conda,用于简化包的安装、管理和环境配置。

可以把Anaconda理解为大规模数据处理、机器学习、数据分析等相关软件的“APP Store”。

2.1 Anaconda安装

Anaconda可以通过官网免费下载使用:Free Download | Anaconda

安装后就可以看到软件全家桶:

在Jupyter Notebook下点击“Install”,安装成功后点击“launch”就可以启动Notebook了。

  →      

2.2 虚拟环境创建

虚拟环境在软件开发中扮演着至关重要的隔离角色,它通过创建独立的Python运行环境来确保不同项目之间不会因为依赖库版本冲突而相互影响。每个虚拟环境都有自己的一份Python解释器副本和独立的第三方包安装目录,使得开发者能够为每个项目配置特定版本的库和工具,从而保证项目的可重复构建与部署,并且简化了多项目并行开发时的依赖管理。

在Anaconda Navigator中创建虚拟环境的操作如下:

这里可以看到我已经有了4个环境:

  • base(root)这个是默认环境,不用创建
  • DL
  • pytorch
  • anaconda3

大家可以按照需求创造自己的环境。

注意:在上面启动Jupyter Notebook时也需要注意是从哪个虚拟环境launch的:

因为不同的虚拟环境下会配置有不同的第三方库

2.3 安装第三方库

即便Jupyter Notebook是基于网页的交互式计算环境,但是在使用前还是需要安装第三方库,否则就会像下面这样:

这就是因为没有先安装'torch'库导致的。

安装第三方库的过程如下:

安装成功后再运行就OK了~

3. Markdown

3.1 Markdown简介

Markdown 是一种轻量级的标记语言,并通过易读易写的纯文本格式实现对文档结构和样式的控制。Markdown 的设计目的是让用户可以专注于内容本身,而非复杂的排版样式,同时其语法简单明了,方便快捷地转换为结构化的HTML、PDF等多种格式。

在Jupyter Notebook中可以选择当前的输入框是想输入文本(Markdown)还是代码:

3.2 Markdown的常用语法

①标题:
使用 `#` 符号表示不同级别的标题,例如:

# 一级标题
## 二级标题
...
###### 六级标题

②段落与换行:
段落之间使用一个空行进行分隔。如果需要在同一行内强制换行,可以在行尾添加两个或多个空格后回车。

③强调:

斜体:使用星号 `*` 或下划线 `_` 包围文字,例如:`*斜体*` 或 `_斜体_`。

加粗:使用两个星号 `**` 或两个下划线 `__` 包围文字,例如:`**加粗**` 或 `__加粗__`。

④引用:

使用大于号 `>` 引领一行或多行文本以创建引用块,嵌套引用则连续使用多个 `>`。

⑤列表:

无序列表:每项前使用 `-`、`+` 或 `*` 开头,如:

- 列表项一
- 列表项二
- 列表项三

有序列表:数字加`.`,如:

1. 第一项
2. 第二项

⑥链接:

直接链接: `[链接文本](链接地址)`,例如:`[Google](https://www.google.com)`

参考式链接: `[链接文本][引用名称]` 在文档任意位置定义 `[引用名称]: 链接地址`。

⑦图片:

图片插入类似链接语法,但在方括号后面加上感叹号 `!`,例如:`![图片描述](图片URL)`

⑧水平线:

通过在一行中输入三个或以上的 `-`、`*` 或 `_` 来创建水平分割线。

4. LaTex

4.1 LaTex介绍

在数学、科技和教育领域,输入公式的语言通常指的是用来描述和展示数学公式、符号以及科学表达式的方法。其中最常见的是LaTeX,它是一种基于TeX的文字处理系统,专门用于排版数学公式、论文和技术文档。

4.2 LaTex的常用语法

关于LaTex编辑公式的内容实在太多,这里不再赘述,引用一篇参考文章:使用CSDN的MarkDown编辑公式_csdn如何打分母分子-CSDN博客

5. Jupyter Notebook使用实例

掌握了上述步骤后,我们就可以写自己的酷炫Notebook文档啦~

点击“Run All Cells”

就会生成下面的文档:

最后别忘了保存好自己的Notebook:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/529061.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

运动想象 (MI) 迁移学习系列 (5) : SSMT

运动想象迁移学习系列:SSMT 0. 引言1. 主要贡献2. 网络结构3. 算法4. 补充4.1 为什么设置一种新的适配器?4.2 动态加权融合机制究竟是干啥的? 5. 实验结果6. 总结欢迎来稿 论文地址:https://link.springer.com/article/10.1007/s11517-024-0…

Linux之线程控制

目录 一、POSIX线程库 二、线程的创建 三、线程等待 四、线程终止 五、分离线程 六、线程ID:pthread_t 1、获取线程ID 2、pthread_t 七、线程局部存储:__thread 一、POSIX线程库 由于Linux下的线程并没有独立特有的结构,所以Linux并…

白炽灯护眼还是LED护眼?热门护眼台灯全方位实测推荐

白炽灯是制热发光体,电流通过发热时产生热量,灯丝温度达到2000摄氏度以上,灯丝处于白炽状态了,它的光电转换效率低,费电,寿命也比较短,最主要的一点是光线会比较集中刺眼,而且调节性…

Cassandra 安装部署

文章目录 一、概述1.官方文档2. 克隆服务器3.安装准备3.1.安装 JDK 113.2.安装 Python3.3.下载文件 二、安装部署1.配置 Cassandra2.启动 Cassandra3.关闭Cassandra4.查看状态5.客户端连接服务器6.服务运行脚本 开源中间件 # Cassandrahttps://iothub.org.cn/docs/middleware/…

深入理解Java多线程与线程池:提升程序性能的利器

✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心哦!✨✨ 🎈🎈作者主页: 喔的嘛呀🎈🎈 目录 引言 一、实现多线程 1.1. 继承Thread类 1.2. 实现Runnab…

趣学前端 | Taro迁移完成之后,总结了一些踩坑经验

背景 四月份的时候,尝试将老的移动端项目改造成多端。因为老项目使用的React框架,综合考量,保障当前业务开发的进度同时,进行项目迁移,所以最后选择了Taro框架。迁移成本会低一些,上手快一些。 上个月&am…

js之原型链

在JavaScript中,原型链是一种用于实现继承和属性查找的机制。每个对象都有一个内部属性[[Prototype]],这个属性指向创建该对象时使用的构造函数的“prototype"属性。对象的方法和属性定义在它的原型对象上。 1.原型(Prototypes&#xf…

AIGC实战——GPT(Generative Pre-trained Transformer)

AIGC实战——GPT 0. 前言1. GPT 简介2. 葡萄酒评论数据集3. 注意力机制3.1 查询、键和值3.2 多头注意力3.3 因果掩码 4. Transformer4.1 Transformer 块4.2 位置编码 5. 训练GPT6. GPT 分析6.1 生成文本6.2 注意力分数 小结系列链接 0. 前言 注意力机制能够用于构建先进的文本…

mysql中 多表查询介绍

在 MySQL 中,多表查询是 SQL 语句的重要组成部分,用于从两个或多个表中检索数据。多表查询可以帮助我们更灵活地处理复杂的数据关系,并从中获取所需的信息。以下是 MySQL 中常见的多表查询及其特点、区别和应用场景。 常见多表查询 1. **内连…

java中几种对象存储(文件存储)中间件的介绍

一、前言 在博主得到系统中使用的对象存储主要有OSS(阿里云的对象存储) COS(腾讯云的对象存储)OBS(华为云的对象存储)还有就是MinIO 这些玩意。其实这种东西大差不差,几乎实现方式都是一样&…

【JAVA】CSS2:样式、选择器、伪类、颜色、字体、边框、列表、背景、盒子、布局、浮动

本文介绍了CSS样式、选择器、伪类、像素、颜色、字体、边框、列表、表格属性、背景、盒子、布局与浮动 1.样式 1.1 行内样式 <h1 style"color: aqua;font-size: large;">123</h1> 1.2 内部样式 <style>h1{color: red;font: 100;}</style>…

从16-bit 到 1.58-bit :大模型内存效率和准确性之间的最佳权衡

通过量化可以减少大型语言模型的大小&#xff0c;但是量化是不准确的&#xff0c;因为它在过程中丢失了信息。通常较大的llm可以在精度损失很小的情况下量化到较低的精度&#xff0c;而较小的llm则很难精确量化。 什么时候使用一个小的LLM比量化一个大的LLM更好? 在本文中&a…