【jupyter】mac os系统下的jupyter的实用技巧

news2024/11/15 1:48:53

在这里插入图片描述

Jupyter notebook是一个开源的web应用,可以让你创建和分享包含代码、公式、可视化和叙述文本的文档。它可以用于数据清洗和转换、数值模拟、统计建模、数据可视化、机器学习等多种用途。

在mac os系统下,有多种方法可以安装jupyter notebook,这里介绍两种常用的方法:

文章目录

    • 方法一:使用pip安装jupyter notebook
    • 方法二:使用setup.py安装jupyter notebook
    • 键盘快捷键
    • 命令模式和编辑模式
    • 单元格类型
    • 执行单元格
    • 缩进和注释
    • 魔法命令
    • 交互式小部件
    • LaTeX公式
    • 函数联想

方法一:使用pip安装jupyter notebook

pip是Python的包管理工具,可以方便地安装和卸载Python的第三方库。使用pip安装jupyter notebook的步骤如下:

  1. 安装最新版本的Python3,在终端中输入python3 --version检查是否安装成功。
  2. 检查pip3是否正确安装,在终端中输入pip3 --version查看版本信息。
  3. 升级pip3以避免安装过程中出现错误,在终端中输入pip3 install --upgrade pip执行升级命令。
  4. 使用pip3安装jupyter notebook,在终端中输入pip3 install jupyter执行安装命令。

方法二:使用setup.py安装jupyter notebook

setup.py是Python的打包工具,可以从源代码编译和安装Python的第三方库。使用setup.py安装jupyter notebook的步骤如下:

  1. 下载jupyter notebook的最新源码包,可以从这里找到,也可以在终端中输入curl https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz > jupyter.tar.gz下载到当前目录。
  2. 解压下载的源码包,在终端中输入tar -xzvf jupyter.tar.gz执行解压命令。
  3. 进入解压后的文件夹,在终端中输入cd jupyter-1.0.0切换到源码目录。
  4. 使用setup.py安装jupyter notebook,在终端中输入python3 setup.py install执行安装命令。注意:你必须在你的系统中安装了XCode MacOS的开发者工具。

验证jupyter notebook的安装

无论使用哪种方法安装jupyter notebook,都可以在终端中输入jupyter notebook启动jupyter notebook并验证是否安装成功。如果没有出现任何错误,就说明安装成功了。

除了安装jupyter notebook之外,还有一些实用的技巧可以让你更高效地使用jupyter notebook。这里列举一些常用的技巧,包括不限于缩进、注释等,并给出具体的样例。

键盘快捷键

键盘快捷键可以节省你大量的时间,让你更快地操作jupyter notebook。jupyter notebook提供了很多键盘快捷键,你可以在菜单栏中找到:Help > Keyboard Shortcuts,或者在命令模式下(稍后介绍)按H查看。每次更新jupyter notebook时,都值得检查一下键盘快捷键,因为可能会增加一些新的快捷键。

命令模式和编辑模式

jupyter notebook有两种模式:命令模式和编辑模式。命令模式下,你可以使用键盘快捷键来操作单元格,比如插入、删除、移动、复制、粘贴等。编辑模式下,你可以在单元格中输入代码或文本。你可以通过单元格左边的颜色来判断当前是哪种模式:蓝色表示命令模式,绿色表示编辑模式。

你可以使用Esc键从编辑模式切换到命令模式,使用Enter键从命令模式切换到编辑模式。在命令模式下,你还可以使用双击鼠标或者按B键来创建一个新的单元格。

单元格类型

jupyter notebook支持两种类型的单元格:代码单元格和Markdown单元格。代码单元格可以让你输入和执行Python代码,Markdown单元格可以让你输入和渲染Markdown文本。Markdown是一种轻量级的标记语言,可以让你用简单的符号来格式化文本,比如加粗、斜体、标题、列表、链接等。

你可以在命令模式下使用M键将当前单元格转换为Markdown单元格,使用Y键将当前单元格转换为代码单元格。你也可以在菜单栏中选择Cell > Cell Type来切换单元格类型。

执行单元格

要执行一个代码单元格,你可以按Shift + Enter键,这会执行当前单元格并跳到下一个单元格。如果下一个单元格不存在,就会创建一个新的代码单元格。你也可以按Ctrl + Enter键,这会执行当前单元格并保持在当前位置。如果你想执行当前单元格并在下面插入一个新的代码单元格,你可以按Alt + Enter键。

要执行一个Markdown单元格,你也可以按Shift + Enter键或者Ctrl + Enter键,这会渲染当前单元格的文本并跳到下一个单元格或者保持在当前位置。如果你想再次编辑一个已经渲染的Markdown单元格,你可以双击它或者按Enter键进入编辑模式。

缩进和注释

在编写Python代码时,缩进和注释是很重要的。缩进可以让你的代码更加清晰和规范,注释可以让你的代码更加易懂和可维护。jupyter notebook提供了一些快捷键来帮助你进行缩进和注释。

要缩进一行或多行代码,你可以选中它们并按Tab键,这会在每行开头添加四个空格。要取消缩进一行或多行代码,你可以选中它们并按Shift + Tab键,这会删除每行开头的四个空格。

要注释一行或多行代码,你可以选中它们并按Cmd + /键(或者在Linux和Windows上使用Ctrl + /键),这会在每行开头添加一个#符号。要取消注释一行或多行代码,你也可以选中它们并按Cmd + /键(或者在Linux和Windows上使用Ctrl + /键),这会删除每行开头的#符号。

魔法命令

jupyter notebook支持一些特殊的命令,称为魔法命令,它们以%或%%开头,可以让你在单元格中执行一些额外的功能,比如计时、运行其他语言的代码、显示图表等。魔法命令有两种类型:行魔法和单元格魔法。行魔法以%开头,只对当前行有效,单元格魔法以%%开头,对整个单元格有效。

你可以在菜单栏中选择Help > Magic to see a list of all available magic commands. Here are some examples of magic commands:

  • %timeit: This line magic can measure the execution time of a single statement, such as a list comprehension or a function call. For example:
%timeit [x**2 for x in range(1000)]

This will output something like:

1000 loops, best of 5: 248 µs per loop
  • %%timeit: This cell magic can measure the execution time of the whole cell, such as a for loop or a code block. For example:
%%timeit
sum = 0
for i in range(1000):
    sum += i**2

This will output something like:

1000 loops, best of 5: 331 µs per loop
  • %matplotlib: This line magic can enable the inline display of matplotlib plots in the notebook. You can also specify a different backend, such as qt or tk, to show the plots in a separate window. For example:
%matplotlib inline
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()

This will output a plot like this:

  • %%writefile: This cell magic can write the content of the cell to a file. You need to specify the file name as an argument. For example:
%%writefile hello.py
print("Hello, world!")

This will create a file named hello.py with the content print(“Hello, world!”).

  • %run: This line magic can execute a Python script and load its content to the current namespace. You need to specify the script name as an argument. For example:
%run hello.py

This will execute the hello.py script and output Hello, world!.

  • %%bash: This cell magic can run a bash script in the cell. You can use any bash commands in the cell. For example:
%%bash
echo "Current date and time:"
date
echo "Current directory:"
pwd
echo "Current user:"
whoami

This will output something like:

Current date and time:
Sat May  6 10:29:03 CST 2023
Current directory:
/Users/user/Desktop/jupyter-notebook-tips
Current user:
user

交互式小部件

jupyter notebook支持一些交互式的小部件,可以让你在单元格中创建一些可视化的控件,比如滑块、按钮、复选框等。这些控件可以和Python代码进行交互,实现一些动态的效果。要使用交互式小部件,你需要导入ipywidgets模块,并使用interact或interactive函数来创建控件。例如:

from ipywidgets import interact
import numpy as np
import matplotlib.pyplot as plt

def f(n):
    x = np.linspace(0, 10, 100)
    y = np.sin(n * x)
    plt.plot(x, y)
    plt.show()

interact(f, n=(1, 10))

这会创建一个滑块,让你调整n的值,从而改变正弦曲线的频率。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OQze2Zd8-1683350343137)(null)]

LaTeX公式

jupyter notebook支持使用LaTeX语法来输入和渲染数学公式。LaTeX是一种专业的排版系统,可以让你用简单的符号来表示复杂的数学表达式。要在jupyter notebook中使用LaTeX公式,你需要用两个美元符号$包围公式。例如:

这是一个二次方程:

a x 2 + b x + c = 0 ax^2 + bx + c = 0 ax2+bx+c=0

这是一个矩阵:

[ a b c d ] \begin{bmatrix} a & b \\ c & d \end{bmatrix} [acbd]

这是一个积分:

∫ a b f ( x ) d x \int_{a}^{b} f(x) dx abf(x)dx

这会渲染成:

这是一个二次方程:

a x 2 + b x + c = 0 ax^2 + bx + c = 0 ax2+bx+c=0

这是一个矩阵:

[ a b c d ] \begin{bmatrix} a & b \\ c & d \end{bmatrix} [acbd]

这是一个积分:

∫ a b f ( x ) d x \int_{a}^{b} f(x) dx abf(x)dx

函数联想

在编写Python代码时,有时候你可能不记得某个函数的名称或参数,或者想要查看某个函数的文档。jupyter notebook提供了一些快捷键来帮助你进行函数联想。

  • Tab键:当你在输入一个变量或函数的名称时,你可以按Tab键来自动补全或显示可选的名称。例如,当你输入plt.后按Tab键,就会显示matplotlib.pyplot模块中的所有函数和属性。当你输入plt.p后按Tab键,就会显示以p开头的所有函数和属性,比如plt.plot、plt.pie等。你可以用上下箭头来选择你想要的名称,然后按Enter键或Tab键来补全。

  • Shift + Tab键:当你在输入一个函数的括号时,你可以按Shift + Tab键来显示该函数的签名或文档。例如,当你输入plt.plot(后按Shift + Tab键,就会显示plt.plot函数的参数和简要说明。如果你再次按Shift + Tab键,就会显示更详细的文档。如果你按住Shift键不放,再连续按四次Tab键,就会在一个单独的窗口中显示完整的文档。

  • ?符号:当你想要查看一个变量或函数的详细信息时,你可以在它的后面加上一个问号?,然后执行单元格。这会在一个单独的窗口中显示该变量或函数的类型、值、文档等信息。例如,当你执行plt.plot?时,就会显示plt.plot函数的完整文档。如果你想要关闭这个窗口,你可以按Esc键或点击窗口右上角的x按钮。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

十大生产力神器,包括5大jupyter插件和五个提升python研发生产力的神器

JupyterLab:一款下一代的笔记本界面,支持多种编程语言,包括python。它具有灵活的界面,可以配置和安排数据科学、科学计算、计算新闻和机器学习等领域的工作流程。 Voil:一款可以将笔记本转换为安全、独立的web应用程序…

将字符串数组转换为字符串类型

大家好,我是三叔,很高兴这期又和大家见面了,一个奋斗在互联网的打工人。 当你在Java编程中需要将一个字符数组转换为字符串类型时,你可以使用Java内置的String类提供的方法。在本文中,笔者将介绍两种将字符数组转换为…

RabbitMQ详解(二):消息模式 Simple(简单)模式

消息模式 Simple(简单)模式 前提&#xff0c;开放5672:RabbitMQ的通讯端口&#xff0c;及查看创建用户的权限 构建maven工程 导入依赖 依赖下载地址: https://mvnrepository.com/artifact/com.rabbitmq/amqp-client <dependency><groupId>com.rabbitmq</group…

协议:HTTP基础内容掌握

一、简单理解 HTTP HTTP 协议一般指 HTTP&#xff08;超文本传输协议 Hyper Text Transfer Protocol&#xff09;。 HTTP是一个简单的请求/响应协议&#xff0c;它运行在TCP之上。 HTTP是一个基于TCP/IP通信协议来传递数据&#xff08;HTML 文件, 图片文件, 查询结果等&#x…

活动预告 Flutter 之夜 | Flutter Night Beijing

Flutter 是一个开源、可移植的 UI 框架&#xff0c;它为开发人员提供了超能力&#xff0c;可以从单个代码库为任何平台构建美观、高质量的应用程序。它将统一代码库和快速迭代开发的生产力与本机编译和硬件加速渲染的性能和功能相结合。Flutter 今天支持的平台包括安卓&#xf…

简单随机微分方程数值解

1.随机微分方程求解&#xff1a;dX(t) − αXtdt σdWt 法一&#xff1a;Euler-Maruyama %% %O-U过程 %dX(t)-alpha*Xt*dtsigma*dWt,X|t0X0 %alpha2,sigma1,X01 % 设置初始参数 T 1; % 时间区间长度 N 1000; % 离散化的时间步数 dt T/N; …

[医学分割比赛] ISBI2023 APIS多模态医学分割比赛总结 + top3解决方案

ISBI2023 APIS多模态医学分割比赛总结 top3解决方案 0.比赛背景1.比赛任务及结果2.第三名方案 - 龙盈智达&#xff08;北京&#xff09;科技有限公司(0) Data Preprocessing(1) Data Augmentation(2) Approach&#xff08;Model&#xff09;(3) Approach(Data Sampling)(4) Ap…

【QT】学习课-pushButton的使用(1)!

Qt 是一个1991年由Qt Company开发的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI程序&#xff0c;也可用于开发非GUI程序&#xff0c;比如控制台工具和服务器。Qt是面向对象的框架&#xff0c;使用特殊的代码生成扩展&#xff08;称为元对象编译器(Meta Object Compi…

《WebGIS快速开发教程》写好啦

告诉大家一个好消息&#xff0c;经过我没日没夜&#xff0c;呕心沥血的创作&#xff0c;这本叫做《WebGIS快速开发教程》的书籍终于写好了。这本书适用于还未毕业的学生、以及正在从事传统前后端开发但是想转到WebGIS开发的人。 这本书的特点突出一个“快”和“轻”&#xff0c…

三子棋小游戏---(C语言)

目录 前言&#xff1a; 1.菜单的打印 2.三子棋构思 3.实现三子棋 3.1使用宏的方式定义数组 3.2打印棋盘 3.3玩家下棋 3.4电脑随机下棋 3.5判断结局 ❤博主CSDN:啊苏要学习 ▶专栏分类&#xff1a;C语言◀ C语言的学习&#xff0c;是为我们今后学习其它语言打好基础&am…

Kyligence Zen产品体验——一站式指标平台泰酷辣~

文章目录 一、前言二、为什么需要指标化平台三、什么是Kyligence Zen四、Kyligence Zen新特性五、Kyligence Zen注册篇六、Kyligence Zen体验篇七、Kyligence Zen实战篇7.1 导入数据7.2 创建指标7.3 指标分析 八、Kyligence Zen总结篇九、参考资料 一、前言 随着互联网和物联网…

tomcat集群下的session共享和负载均衡(redis实现)

环境 操作系统&#xff1a;windows tomcat1&#xff1a;Apache Tomcat/7.0.52&#xff08;8085&#xff09; tomcat2&#xff1a;Apache Tomcat/7.0.52&#xff08;8086&#xff09; jre&#xff1a;1.7.0_80 nginx&#xff1a;nginx-1.20.1&#xff08;8070&#xff09; redis…

基于 SpringBoot+WebSocket 无DB实现在线聊天室(附源码)

文章目录 基于 SpringBootWebSocket 无DB实现在线聊天室0 项目说明0.1 样例展示0.2 源码地址 1 WebSocket 简介1.1 HTTP1.2 WebSocket1.2.1 WebSocket 协议1.2.2 WebSocket 交互 2 使用教程2.1 客户端&#xff08;浏览器&#xff09;2.1.1 WebSocket 对象2.1.2 WebSocket 事件2…

重装系统后,qt5.11.3升级到qt5.12.6所遇到的问题

前提&#xff1a;重装了系统&#xff1a; c/qt windows10 语音模块TTS异常&#xff0c;数据库缺少驱动 一&#xff1a;语音模块不能播放 qt使用语音模块时&#xff0c;在初始化时出现异常&#xff1a; onecore\com\combase\dcomrem\resolver.cxx(2299)\combase.dll!00007FF8…

Oracle存储过程~封神之路

简介 Oracle 存储过程是 Oracle 数据库中的一种数据处理对象&#xff0c;它可以在数据库中定义一组预定义的 SQL 语句&#xff0c;用于完成特定的数据库操作。存储过程可以被授权的用户调用&#xff0c;并且可以执行多个语句&#xff0c;这些语句可以被视为一个单独的操作&…

“深圳首届十大金口碑人物”优必选科技创始人兼CEO周剑获此殊荣

深圳晚报社联合深圳市诚商信用评级有限公司、深圳市诚信营商促进会和中国善网&#xff0c;共同举办了首届“金口碑”评选活动。活动涵盖多个领域&#xff0c;历经多个环节的评定和实地走访&#xff0c;最终有10名个人、20家企业和70家商户成功获得“深圳首届十大金口碑人物”、…

Visual C++实现推箱子游戏的核心算法设计与实现(附源码和和资源)

需要源码和资源请点赞关注收藏后评论区留言私信~~~ 在前面的博客中已经讲解了推箱子游戏的菜单和各种对话框的实现&#xff0c;下面对推箱子游戏的核心算法设计和实现进行讲解 一、地图文件读取模块的设计与实现 地图文件读取模块&#xff0c;主要负责将地图文件进行读取&…

【AI大模型】“讯飞星火”认知大模型正式发布 计划10月底赶超ChatGPT

文章目录 前言你使用过这种对话式AI吗&#xff1f;有什么看法或感受&#xff1f;“讯飞星火大模型将超越chatgpt&#xff1f;”这类型的人工智能对现在的社会有什么意义&#xff1f;这类型的人工智能&#xff0c;未来前景如何&#xff1f;申请体验写在最后 前言 5月6日&#xf…

科普:跨链桥是如何被黑的?

科普&#xff1a;跨链桥是如何被黑的&#xff1f; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hbvPVTkb-1666679410875)(htTPS://tva1.sinaimg.cn/large/e6c9d24ely1h4r0auxvmxg20tr04ojug.gif)] 跨链桥是一种允许两个独立区块链网络之间进行通信…

【git】用好 stash,工作超nice

一、介绍 如果修改后的内容还不想commit&#xff0c;就可以用git stash命令。它会将工作区和暂存区中的修改(也就是还没commit的内容)都会被保存到堆栈里&#xff0c;并在之后恢复到任意指定的分支上。 二、应用场景 1、在分支a进行开发feature 1时&#xff0c;突然需要紧急…