将 Jupyter Notebook 用于 JavaScript (使用 Node.js 或 Deno 环境)

这篇具有很好参考价值的文章主要介绍了将 Jupyter Notebook 用于 JavaScript (使用 Node.js 或 Deno 环境)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

熟悉 Python 的读者, 可能同样对 IPython 或 Jupyter 等项目 (如 Jupyter Notebook) 有所耳闻. 正如其名, IPython 项目让 Python 这门语言变得 “interactive”; 如: 交互式的 Shell 程序, 对交互式数据可视化以及 GUI 工具集的支持等等 (具体可见 IPython 项目的网站).

比如在 Notebook 中, 用户可以实现交互式的代码执行, 并将其和富文本, 数学公式, 图表以及多媒体等内容结合在一起. 想必体验过它的读者, 多少会对这种编写代码或者展示成果的模式, 有着这样那样的印象.

就笔者自己使用 Notebook 的体验来说, 在交互式的环境中进行开发和测试, 有着与在程序中设定断点相比更加直观灵活的数据查看体验, 也可以减少反复修改代码并重新执行的苦恼. 不过, Notebook 采用线性排列单元格的设计, 而并不限制单元格执行的顺序, 只是在单元格旁侧标注执行的次序号; 用户可以多次执行某个单元格中的代码, 或者修改单元格中的代码后再次执行. 如果使用不当, 则有可能在开发时, 失去对代码执行先后顺序的理解, 或者不小心对数据造成污染, 进而增加产生问题的可能.

随着 IPython 项目规模不断扩大, 自 IPython 4.0 开始, 其将项目中与语言关系不大的部分 — 比如 Notebook 的格式, 通信协议, 展示 Notebook 的 Web 应用等等 — 迁移到了以 Jupyter 为名的新项目下; IPython 项目则是提供一个 Python 语言的 Jupyter 内核, 专注于 “interactive Python (交互性的 Python)” (另见 Jupyter 项目的文档).

Jupyter 的名称来自于当时其支持的若干编程语言: Julia, Python 以及 R. 安装 Jupyter 时自带有 IPython 内核, 其为 Jupyter 提供针对 Python 程序的支持. 除了 IPython 之外, 目前还有 近百个社区维护的 kernel 可供选择, 其中不仅有针对 Bash, JavaScript / TypeScript 这样的脚本语言的内核, 对于像 C/C++ 和 Golang 这样的语言, 也有很多适配.

说回本文的话题, 其实在 Notebook 中, 可以使用 %%js 或者 %%javascript 这样的 magic command (魔法命令) 直接执行 (一些比较简短的) JavaScript 代码. 也可以参考这个 讨论 中提到的方式引入一些可能会需要的 JavaScript 包.

不过, 如果需要真正针对 JavaScript 语言的体验, 还是需要安装适用于 JavaScript 的 Jupyter Kernel. 本文将介绍基于 Node.js 的 IJavaScript 项目, 以及 Deno (一个较新的 JavaScript 运行时) 自带的 Jupyter 支持.

安装 Jupyter

既然要使用 Jupyter Notebook 等相关项目, 自然要先安装 Jupyter 项目的软件.

Jupyter 相关的软件可以通过 Python Package Index (PyPI) 获取并安装. 项目的 安装说明页 上给出了针对使用 pip 进行安装的说明, 并指出如果存在环境管理相关的需求, 可参见 conda, pipenv 以及 Homebrew 等项目.

Python 语言推荐使用 pip 从 PyPI 安装软件包, 同时可以使用 venv 来将不同项目的环境与共享使用的 Python 安装隔绝开来. 笔者这里也不建议使用额外的第三方软件, 以避免引入额外的复杂度.

Python 语言有若干种实现. 为了表述简便, 在无特殊说明时, 下文中的 Python 在指代语言本身外, 均代表常用的 CPython 实现.

安装时使用虚拟环境的必要性

在一些 Linux 发行版中, 系统自带有 Python 解释器, 直接使用 pip 安装软件包可能会写入这个系统目录下, 进而和系统包管理器产生冲突 (系统包管理器也可能会包含一些 Python 软件包). 此外, 包管理器中的 Python 软件包版本也可能较为滞后, 不适用于需要使用较新版本的情况. 因此, 建议使用独立于系统的 Python 安装 (通常需要自行编译), 或创建 “虚拟环境” (见下文), 再在其中安装自己需要的软件包.

而在 Windows 上, Python 的安装相对独立, 因此一般用户直接将软件包安装到 Python 环境下也并不会有特别的影响. Python 语言的安装器, 默认会将语言 (执行环境) 安装在用户的 %LocalAppData% 下 (笔者也建议这么做). 而 pip 安装软件包时, 默认也是根据 prefix 决定路径, 即 pip 对应 Python 安装的下方. 若用户在安装 Python 时, 将 Python 安装在了一些权限受限的地方 (如 %ProgramFiles% 目录下), 则 pip 会将软件包安装在用户的 %AppData% 中.

另请参见 “在 Windows 上使用 Python - docs.python.org”.

可以参考笔者的 上一篇文章 对此也有介绍.

直接安装在 Python 环境下

笔者在 Linux 下倾向使用较新的 Python 版本, 因此会使用独立的 Python 安装 (比如安装最新的 Python 3.12.0 在 ~/python3.12.0/ 目录下); 而在 Windows 上安装 Python, 类似于独立的 Python 安装. 这样的情况下, 可以尝试这种安装方式.

由于笔者认为 Jupyter 属于较为通用的软件, 并且通常不会作为可能的依赖影响其它项目, 因此决定直接将其安装在 Python 环境下.

于是, 在确定当前使用的具体 Python 安装 (以及 pip 安装) 的位置后, 直接使用 pip 安装 jupyter 即可.

根据需要, 可以使用 python -m 调用 pip, 或直接调用 pip (推荐前者). 需要注意, Linux 环境下可能需使用 python3pip3 代替 pythonpip.

这里笔者直接安装 Jupyter Lab (即 jupyterlab); 亦可仅安装 Jupyter Notebook (即 notebook).

python -m pip install jupyterlab
# /path/to/python -m pip install jupyterlab
pip install jupyterlab
# /path/to/pip insall jupyterlab
建立 venv 虚拟环境并在其中安装

Python 的 venv 模块可以创建轻量级的 “虚拟环境 (virtual environment)”, 每个虚拟环境中的软件包互不相干, 安装在各自的 site 目录下. 虚拟环境是基于某个现有的 Python 安装 — 称为 “基础 (base)” Python — 上建立的, 并且可以根据需要, 同样使虚拟环境与基础 Python 环境中的软件包隔开, 这样可以仅让显式在虚拟环境中安装的软件包生效.

从 Python 3.5 起, 便可以使用 Python 标准库中提供的 venv 模块创建虚拟环境. 比如, 在家目录下新建一个 jupyter 目录, 并在当前路径下的 venv 目录中建立一个基于当前 python 的虚拟环境:

mkdir ~/jupyter
cd ~/jupyter
python -m venv venv

之后启用这个虚拟环境, 并且在其中安装 jupyter (以在 Linux 平台下使用 bash 为例):

source venv/bin/activate
pip install jupyterlab

启动 Jupyter Lab

安装好后, 直接运行 jupyter lab 即可. 如果是本地运行, 直接在浏览器中访问命令输出中给出的链接即可. 亦可在远程设备上运行, 但要注意访问权限的控制.

关于 Jupyter 的概念介绍及使用, 本文不作展开, 可以参照附录中的文章进行操作.

安装 IJavaScript 内核

n-riesco/ijavascript 项目实现了一个可以在 Node.js 中执行 JavaScript 的 Jupyter 内核. 可以通过 npm 安装这个项目.

在 Linux 上, 这里假设使用的是通过 nvm 等项目而非系统包管理器, 为当前用户安装的 node 环境, 否则需要设置 npm prefix 在当前用户目录下.

通过 npm 安装 ijavascript 时, 需要原生构建, 因此在 Linux 下, 建议事先安装 build-essential 软件包.

sudo apt install build-essential
npm install -g ijavascript

之后运行 ijsinstall 即可完成安装. 详情参见项目 README.

完成安装后, 再次运行 Jupyter Lab, 即可见到对 JavaScript 的支持.

安装 Deno 及其 Jupyter 支持

目前 Deno 的 Jupyter 支持仍处于测试状态, 但这不影响我们尝鲜使用.

Deno 在 1.37 版本加入了对 Jupyter 的支持. 根据 Deno 的安装说明 完成安装后, 运行:

deno jupyter --unstable --install

即可完成 Jupyter Kernel 的安装.

由于 Deno 本身支持 TypeScript, 同时可以直接从 URL 引入 JavaScript 依赖, 因此具有非常好的灵活性. 详情可以参见 Bringing Modern JavaScript to the Jupyter Notebook.

另可参见 Deno 关于其 Jupyter 模块的文档: https://docs.deno.com/runtime/manual/tools/jupyter.


另请参见:文章来源地址https://www.toymoban.com/news/detail-725533.html

  • https://www.dataquest.io/blog/jupyter-notebook-tutorial/
  • https://realpython.com/jupyter-notebook-introduction/
  • Just heard of Jupyter - is it possible to use Javascript and keep it in the cloud? - Stack Overflow

到了这里,关于将 Jupyter Notebook 用于 JavaScript (使用 Node.js 或 Deno 环境)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Node.js -- JavaScript的运行环境

    HTML : 骨架 CSS :外观 JS : 灵魂 JavaScript可以在浏览器中被执行的原因是浏览器里面都有一个JavaScript的解析引擎 浏览器 解析引擎 Chrome V8 Firefox OdinMonkey (奥丁猴) Safri JSCore IE Chakra(查克拉) 每个浏览器都内置了DOM、BOM这样的API函数。 V8引擎负责解析和执行JavaScript代码 内置

    2023年04月10日
    浏览(38)
  • jupyter notebook和pycharm中配置pytorch环境,及jupyter notebook内核创建

    anaconda已经成功安装,并且可以成功打开jupyter notebook(可以参加我的另一篇博文:windows下anaconda的下载安装) pycharm已经成功安装,并且可以成功打开(社区版本和专业版的都可以,ps:社区办免费,但是不可以远程连接服务器,专业版要付费或者学生身份可以免费申请,可以

    2024年02月07日
    浏览(66)
  • 服务器端安装jupyter notebook并在本地使用与环境配置一条龙服务【服务器上跑ipynb】

    路径是 ~/.jupyter/jupyter_notebook_config.py 上述代码会生成一个密钥,记住该密钥。 打开配置文件后,shift+g跳到末尾,i进入编辑模式,插入以下代码: (最后一行我没有用到,需要的可以取消注释) esc退出编辑,shift + :wq保存 如 最后,然后在本地打开浏览器输入以下内容: 初次

    2024年02月14日
    浏览(62)
  • Jupyter Notebook之添加anaconda环境

    创建新的 Anaconda 环境: 打开 Anaconda Prompt(或命令行界面。 创建一个新的环境,使用命令如 conda create -n yourenvname python=x.x anaconda,其中 yourenvname 是您的环境名,x.x 是 Python 版本。 激活新环境: 在 Anaconda Prompt 中激活新环境,使用命令 conda activate yourenvname。 安装 Jupyter Noteb

    2024年01月21日
    浏览(44)
  • Jupyter notebook如何加载torch环境

    默认你已经安装了anaconda 和 pytorch 环境。 1,必须要以管理员身份打开 Anaconda prompt终端, 2,进入pytorch环境中: 3,安装必要插件: (1)conda install nb_conda (2)conda install ipykernel 4,在 Anaconda prompt 中输入下面指令进行启动: 在新建文件这里,你就可以看到基于torch的核可以调

    2024年02月06日
    浏览(35)
  • Jupyter Notebook之移除anaconda环境

    查找内核的确切名称: 首先,需要找出想要移除的内核的名称。打开 Anaconda Prompt 或命令行,并输入 jupyter kernelspec list 。这将显示所有安装的内核及其对应的路径。 移除内核: 使用得到的内核名称,运行 jupyter kernelspec uninstall yourenvname,其中 yourenvname 是要移除的内核的名称

    2024年01月17日
    浏览(44)
  • 如何在jupyter notebook 中添加虚拟环境

    一.如何在jupyter   notebook   中添加虚拟环境 假设在D:tf_trainingenvTraining创建了名为env_training的虚拟环境。 1.安装IPykernel python2 pip install ipykernel python3 pip install ipykernel 说明:最好进入到虚拟环境的那个目录下进行安装IPykernel,如图1所示。 2.将 Virtualenv 加入IPykernel 在cmd命令窗

    2024年02月12日
    浏览(39)
  • python环境安装与配置 Jupyter Notebook的环境配置

    浏览器上搜索python官网 进入官网,点击downloads(下载的意思)在里面自行选择 在这里选择需要的版本,点击即可 选择自定义安装,勾选添加环境变量 下一步全选,第三步修改安装路径,怎么方便怎么来 安装成功后,点击键盘Windows+R键进入运行输入cmd 进入后输入python 可以查

    2024年03月09日
    浏览(67)
  • jupyter notebook 配置conda 虚拟环境python

    conda创建python环境 激活环境 在虚拟环境中安装ipykernel 添加虚拟环境进到 jupyter notebook 启动 jupyter notebook 参考链接: 使用Conda来配置Jupyter notebook的虚拟环境 https://www.cnblogs.com/tccjx/articles/16469642.html

    2024年01月17日
    浏览(60)
  • 在Jupyter Notebook中添加Anaconda环境(内核)

    在使用前我们先要搞清楚一些事: 我们在安装anaconda的时候它就内置了Jupyter Notebook,这个jupyter初始只有base一个内核(显示为Python3) 此后其实我们就不需要重复安装完整的jupyter notebook了,只要按需为其添加新的内核即可(一个内核对应一个新建的anaconda 环境) 始终将base环

    2024年02月11日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包