当前位置: 首页 > news >正文

Jupyter Notebook 使用教程

Jupyter Notebook 使用教程

目录

  1. 概述
  2. 启动Jupyter Notebook
  3. 创建新的Notebook
  4. Notebook界面介绍
  5. 使用代码单元格
  6. 使用Markdown单元格
  7. Notebook的基本操作
  8. 保存和导出Notebook
  9. 扩展功能和技巧

1. 概述

Jupyter Notebook是一个开源的Web应用程序,允许您创建和共享包含代码、方程、可视化和叙述文本的文档。它在数据清理和转换、数值模拟、统计建模、数据可视化和机器学习等领域得到了广泛应用。

2. 启动Jupyter Notebook

在命令行中输入以下命令启动Jupyter Notebook:

jupyter notebook

运行此命令后,您的默认浏览器将自动打开,并显示Jupyter Notebook的界面。如果未自动打开,可以在浏览器中输入以下地址手动打开:

http://localhost:8888/

3. 创建新的Notebook

在Jupyter Notebook界面中,您可以通过以下步骤创建一个新的Notebook:

  1. 点击右上角的“New”按钮,会弹出一个下拉菜单。
  2. 在下拉菜单中选择“Python 3”来创建一个新的Notebook。

此时,浏览器将打开一个新的标签页,显示一个新的Notebook。在这里,您可以输入和运行Python代码。

4. Notebook界面介绍

Jupyter Notebook界面主要由以下几个部分组成:

  • 文件导航栏:显示您当前目录下的所有文件和文件夹。
  • 菜单栏:包含文件操作、编辑、视图等选项。
  • 工具栏:包含常用操作按钮,如保存、添加单元格、运行单元格等。
  • 单元格区域:用于输入和运行代码或文本。

5. 使用代码单元格

代码单元格用于输入和运行Python代码。

5.1 输入和运行代码

  1. 在单元格中输入Python代码,例如:

    print("Hello, Jupyter!")
    
  2. Shift + Enter键运行当前单元格中的代码,并移动到下一个单元格。您也可以点击工具栏中的运行按钮(带有箭头的三角形)。

5.2 查看输出

代码运行后,输出结果会显示在代码单元格的下方。例如,上面的代码运行后会显示:

Hello, Jupyter!

6. 使用Markdown单元格

Markdown单元格用于输入格式化文本、方程和其他非代码内容。

6.1 输入和渲染Markdown

  1. 将单元格类型设置为Markdown。可以点击工具栏中的下拉菜单选择“Markdown”,或者按Esc键进入命令模式,然后按M键将当前单元格转换为Markdown单元格。

  2. 在单元格中输入Markdown内容,例如:

    # 这是一个标题
    这是一个段落。您可以使用**粗体**和*斜体*格式化文本。
    
  3. Shift + Enter键渲染Markdown内容。

6.2 插入方程

您可以使用LaTeX语法在Markdown单元格中插入数学方程。例如:

这是一个行内方程:$E=mc^2$这是一个块级方程:
$$
a^2 + b^2 = c^2
$$

渲染后,将显示为:

这是一个行内方程: E = m c 2 E=mc^2 E=mc2

这是一个块级方程:
a 2 + b 2 = c 2 a^2 + b^2 = c^2 a2+b2=c2

7. Notebook的基本操作

7.1 添加和删除单元格

  • 添加单元格:点击工具栏中的+按钮,或者在命令模式下按A键在当前单元格上方添加新单元格,按B键在当前单元格下方添加新单元格。
  • 删除单元格:选中单元格后,点击工具栏中的剪刀图标,或者在命令模式下按DD键删除当前单元格。

7.2 移动单元格

在命令模式下,使用以下快捷键移动单元格:

  • K键或上箭头键将选中单元格向上移动。
  • J键或下箭头键将选中单元格向下移动。

7.3 合并和拆分单元格

  • 合并单元格:选中多个单元格后,点击菜单栏中的“Edit” > “Merge Cells”选项,或者按Shift + M键合并选中的单元格。
  • 拆分单元格:选中单元格后,点击菜单栏中的“Edit” > “Split Cell”选项,或者按Ctrl + Shift + -键在光标处拆分当前单元格。

7.4 更改单元格类型

在命令模式下,按以下快捷键更改单元格类型:

  • Y键将单元格类型更改为代码单元格。
  • M键将单元格类型更改为Markdown单元格。

8. 保存和导出Notebook

8.1 保存Notebook

  • 手动保存:点击工具栏中的保存图标,或者按Ctrl + S键保存当前Notebook。
  • 自动保存:Jupyter Notebook会自动保存您的工作,但定期手动保存是一个好习惯。

8.2 导出Notebook

您可以将Notebook导出为多种格式:

  1. 点击菜单栏中的“File” > “Download as”选项。
  2. 选择您需要的格式,例如.ipynb(Jupyter Notebook格式)、.py(Python脚本)、.html(HTML文档)等。

9. 扩展功能和技巧

9.1 使用魔术命令

Jupyter Notebook提供了许多魔术命令,用于增强代码的功能。例如:

  • %matplotlib inline:在Notebook中内嵌显示Matplotlib图表。
  • %timeit:测量代码运行时间。

9.2 安装和使用扩展

您可以通过nbextensions来扩展Jupyter Notebook的功能:

  1. 安装jupyter_contrib_nbextensions

    pip install jupyter_contrib_nbextensions
    jupyter contrib nbextension install --user
    
  2. 启用扩展:

    jupyter nbextension enable <extension_name>
    

9.3 使用版本控制

Jupyter Notebook支持版本控制,您可以通过以下步骤启用:

  1. 安装nbdime

    pip install nbdime
    nbdime config-git --enable
    
  2. 使用Git进行版本控制:

    git init
    git add <notebook_name>.ipynb
    git commit -m "Initial commit"
    

相关文章:

Jupyter Notebook 使用教程

Jupyter Notebook 使用教程 目录 概述启动Jupyter Notebook创建新的NotebookNotebook界面介绍使用代码单元格使用Markdown单元格Notebook的基本操作保存和导出Notebook扩展功能和技巧 1. 概述 Jupyter Notebook是一个开源的Web应用程序&#xff0c;允许您创建和共享包含代码…...

Leetcode 100361100367.切割蛋糕的最小总开销

Medium&#xff1a;动态规划搜索&#xff08;实际就是优化后的dfs&#xff09; class Solution { public: int f[25][25][25][25] {0};int dp(int row1, int col1, int row2, int col2, vector<int>& horizontalCut, vector<int>& verticalCut){if(row1 …...

单网口设备的IP地址识别-还原-自组网

1.如果知道该设备所在网段&#xff1a; 此时可以使用nmap工具&#xff0c;进行网段扫描&#xff1a; nmap -sn 192.168.0.0/24 256个地址的子网10秒就能扫描一轮。关掉设备&#xff0c;打开设备&#xff0c;diff&#xff0c;基本就可以定位所要找到目标设备的IP 2.如果不知道…...

太速科技-FMC207-基于FMC 两路QSFP+光纤收发子卡

FMC207-基于FMC 两路QSFP光纤收发子卡 一、板卡概述 本卡是一个FPGA夹层卡&#xff08;FMC&#xff09;模块&#xff0c;可提供高达2个QSFP / QSFP 模块接口&#xff0c;直接插入千兆位级收发器&#xff08;MGT&#xff09;的赛灵思FPGA。支持利用Spartan-6、Virtex-6、Kin…...

昇思25天学习打卡营第13天|munger85

文本解码原理–以MindNLP为例 重要的就是怎么样把数字最后转化成真正的文字。而且自回归模型它会一个字给一个字的预测&#xff0c;下一个字应该是什么&#xff1f; 如果这个模型下载很慢&#xff0c;你就可以通过这种方式从摩大社区进行下载。 这种方式&#xff0c; 每一次候…...

Python - Word转TXT文本,或TXT文本转Word

Word文档&#xff08;.doc或.docx&#xff09;和纯文本文件&#xff08;.txt&#xff09;是两种常用的文件格式。Word文档通常用于复杂的文档处理和排版&#xff0c;而纯文本文件则用于存储和传输纯文本信息。了解如何在这两种格式之间进行转换能提高工作效率&#xff0c;并便于…...

链接追踪系列-00.es设置日志保存7天-番外篇

索引生命周期策略 ELK日志我们一般都是按天存储&#xff0c;例如索引名为"zipkin-span-2023-03-24"&#xff0c;因为日志量所占的存储是非常大的&#xff0c;我们不能一直保存&#xff0c;而是要定期清理旧的&#xff0c;这里就以保留7天日志为例。 自动清理7天以前…...

Vant Ui 最新访问地址

Vant 4 - A lightweight, customizable Vue UI library for mobile web apps. 顺带一个顶部导航栏正常写法 先使用吸顶为0&#xff0c;然后再写nav-bar <van-sticky :offset-top"0"> <van-nav-bar class"top-title" title"村集体土地公示&q…...

【学习笔记】无人机(UAV)在3GPP系统中的增强支持(八)-通过无人机进行无线接入

引言 本文是3GPP TR 22.829 V17.1.0技术报告&#xff0c;专注于无人机&#xff08;UAV&#xff09;在3GPP系统中的增强支持。文章提出了多个无人机应用场景&#xff0c;分析了相应的能力要求&#xff0c;并建议了新的服务级别要求和关键性能指标&#xff08;KPIs&#xff09;。…...

PTrade量化交易终端常见问题11

盈亏分析为空。 回测详情内&#xff0c;盈亏分析内为空。 1、回测正常结束&#xff0c;并且产生多笔交易&#xff1b; 2、盈亏分析热力图无任何内容&#xff0c;检查支持版本&#xff0c;盈亏分析是在需求单号&#xff1a;202211114089&#xff0c;于PTrade1.0-QTV202301.01.…...

被动的机器人非线性MPC控制

MPC是一种基于数学模型的控制策略&#xff0c;它通过预测系统在未来一段时间内的行为&#xff0c;并求解优化问题来确定当前的控制输入&#xff0c;以实现期望的控制目标。对于非线性系统&#xff0c;MPC可以采用非线性模型进行预测和优化&#xff0c;这种方法被称为非线性模型…...

什么样的服务器是合乎直销网站标准

现在社会的发展,有着越来越多的人想要利用互联网来做直销。做好直销行业系统解决方案离不开好的服务器支持,服务器的的稳定性和速度是直接影响网站后期运作,可以看做是网站的根基。 做网站直销选择租用服务器需要注意的几点要素 一些大的直销互联网公司如安利、雅芳、康宝莱、玫…...

python 语法学习 day13

一.判断题错题反思 1.创建对象是通过调用构造方法完成的 3.python方法定义的第一个参数是self 4.一个对象只能有一个实例变量&#xff08;错&#xff09; 5.在python类中,构造方法的名称为__init__ 6.从类定义之外直接访问实例变量是不好的程序设计风格 7.在python中定义类是时…...

Spring MVC中Restful风格引入

一&#xff0c;RESTful概述 在现代Web应用开发中&#xff0c;RESTful架构风格已成为一种标准实践&#xff0c;特别是在构建可扩展的Web服务时。Spring MVC提供了全面的支持来构建遵循REST原则的Web服务。我在此介绍如何在Spring MVC中实现RESTful风格的Web服务&#xff0c;并通…...

C# Winform 系统方案目录的管理开发

在做一个中等复杂程度项目时&#xff0c;我们通常有系统全局配置&#xff0c;还要有对应的方案目录的管理和更新。 比如我们有如下需求&#xff1a;开发一个方案管理&#xff0c;可以新建、打开和保存方案&#xff0c;同时还需要保存方案中的各种文件。我设计的采用目录管理和…...

算法-二叉树常见问题详解

文章目录 1. 二叉树的三种遍历方式的实质2. 二叉树的序列化与反序列化3. 根据前序中序反序列创建二叉树4. 二叉树的路径问题5. LCA公共祖先问题6. 二叉搜索树的LCA问题7. 验证搜索二叉树8. 修建搜索二叉树9. 二叉树打家劫舍问题 1. 二叉树的三种遍历方式的实质 这个相信大家都不…...

【流媒体】 通过ffmpeg硬解码拉流RTSP并播放

简介 目前RTSP拉流是网络摄像头获取图片数据常用的方法&#xff0c;但通过CPU软解码的方式不仅延时高且十分占用资源&#xff0c;本文提供了一种从网络摄像头RTSP硬解码的拉流的方法&#xff0c;并且提供python代码以便从网络摄像头获取图片进行后续算法处理。 下载ffmpeg F…...

Go语言指针及不支持语法汇总

本文为Go语言中指针定义和示例及不支持语法汇总。 目录 指针 定义指针 关键字new定义 函数返回指针 空指针 Go不支持语法汇总 总结 指针 Go语言也有指针&#xff0c;结构体成员调用时&#xff0c;obj.name Go语言在使用指针时&#xff0c;会使用内容的垃圾回收机制&am…...

Why can‘t I access GPT-4 models via API, although GPT-3.5 models work?

题意&#xff1a;为什么我无法通过API访问GPT-4模型&#xff0c;尽管GPT-3.5模型可以工作&#xff1f; 问题背景&#xff1a; Im able to use the gpt-3.5-turbo-0301 model to access the ChatGPT API, but not any of the gpt-4 models. Here is the code I am using to tes…...

MATLAB中Simulink.SimulationData.Dataset用法

目录 语法 说明 示例 访问使用Dataset格式记录的数据 打开模型vdp 使用 Dataset 对象来组合模拟输入信号 Simulink.SimulationData.Dataset的功能是访问已记录的模拟数据或组合模拟输入数据。 语法 ds Simulink.SimulationData.Dataset ds Simulink.SimulationData.Da…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件&#xff0c;这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下&#xff0c;实现高效测试与快速迭代&#xff1f;这一命题正考验着…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中&#xff0c;理解API&#xff08;应用程序接口&#xff09;和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能&#xff0c;使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...