在 IPython/Jupyter Notebooks 中显示行号

Posted

技术标签:

【中文标题】在 IPython/Jupyter Notebooks 中显示行号【英文标题】:Showing line numbers in IPython/Jupyter Notebooks 【发布时间】:2012-06-14 07:58:30 【问题描述】:

来自在 IPython/Jupyter Notebooks 中运行的大多数语言内核的错误报告指出了发生错误的行;但是(至少在默认情况下)笔记本中没有显示行号。

是否可以将行号添加到 IPython/Jupyter Notebooks?

【问题讨论】:

更改 ipython 笔记本的默认行为使其默认显示行号也很有用 【参考方案1】:
    Escape 使左侧部分变为蓝色。

    然后按 L。有效!

    如果你想隐藏它们,使用相同的算法。

    如果要影响所有 Jupiter 行,请确保在最后一行进行,否则只有一行受到影响。

【讨论】:

【参考方案2】:

要在 Jupyter 实验室中默认显示行号,

点击菜单SettingsAdvanced Settings Editor(或使用快捷方式control+,)。将出现一个包含三列的环境:设置类别System DefaultsUser Preferences。 选择类别notebook"codeCellConfig" 选项中将密钥"lineNumbers" 设置为true

例如,(假设没有其他用户配置设置),:


    "codeCellConfig": 
        "lineNumbers": true,
    

【讨论】:

【参考方案3】:

在 Jupyter Lab 2.1.5 中,是 View -> Show Line Numbers

【讨论】:

【参考方案4】:

要在启动时默认打开所有单元格中的行号,我推荐this link。我引用:

    导航到您的 jupyter 配置目录,您可以通过在命令行中键入以下内容来找到该目录:

    jupyter --config-dir
    

    从那里打开或创建custom 文件夹。

    在该文件夹中,您应该找到一个custom.js 文件。如果没有,您应该能够创建一个。在文本编辑器中打开它,然后 添加此代码:

    define([
        'base/js/namespace',
        'base/js/events'
        ],
        function(IPython, events) 
            events.on("app_initialized.NotebookApp",
                function () 
                    IPython.Cell.options_default.cm_config.lineNumbers = true;
                
            );
        
    );
    

【讨论】:

【参考方案5】:

正在寻找这个:Shift-L 在 JupyterLab 1.0.0 中

【讨论】:

【参考方案6】:

视图中选择Toggle Line Number选项 -> Toggle Line Number

【讨论】:

我不敢相信它这么容易。不知道为什么当他们按行给出错误时默认情况下它没有打开。如果笔记本只突出显示出现错误的行,那就太好了。 此视图不再显示。 :/ 必须在命令面板中搜索它。【参考方案7】:

对我来说,ctrl + m是用来保存网页为png的,所以不能正常工作。但我找到了另一种方法。

在工具栏底部有一个名为打开命令面板,您可以点击它并输入该行,在这里可以看到切换单元格的行号。

【讨论】:

【参考方案8】:

您还可以在浏览器的 Jupyter 笔记本顶部工具栏上的 View 下找到 Toggle Line Numbers。 这将添加/删除 所有 笔记本单元格中的行号。

对我来说,Esc+l 只添加/删除了活动单元格的行号。

【讨论】:

【参考方案9】:

CTRL - ML 切换 CodeMirror 区域中的行号。有关其他键盘快捷键,请参阅 QuickHelp。

详细说明 CTRL - M(或 ESC)带您进入命令模式,然后按 L 键应该切换当前细胞系号的可见性。在较新的笔记本版本中,Shift-L 应该为所有单元格切换。

如果您不记得快捷方式,请调出命令面板 Ctrl-Shift+P(在 Mac 上为 Cmd+Shift+P),然后搜索“行号”),它应该允许切换并显示快捷方式。

【讨论】:

对于 Ipython 3 (Jupyter),在命令模式 (Esc) 下,您只需按“L”即可切换行号 有没有办法给木星的所有单元格自动添加行号 使用 Ctrl-m h 在 ipython notebook 中显示所有键盘快捷键。或者,您可以单击顶部的QuckHelp 以显示快捷方式 Ctrl-Shift+P 胜利【参考方案10】:

这里是如何知道活动的快捷方式(取决于你的操作系统和笔记本版本,它可能会改变)

Help > Keyboard Shortcuts > toggle line numbers

在运行 ipython3 的 OSX 上,它是 ESC L

【讨论】:

【参考方案11】:

1.按esc进入命令模式 2.perss l(it L in lowcase) 显示行号

【讨论】:

这是3年前发布的***.com/a/26174059/3001626,为什么要在同一个帖子上转发?【参考方案12】:

在 IPython 2.2.0 上,只需在命令模式下键入 l(小写 L)(通过键入 Esc 激活)即可。其他快捷键见【帮助】-【键盘快捷键】。

此外,您可以设置默认行为以通过editing custom.js. 显示行号

【讨论】:

我不明白这个答案是如何不被接受的(可能发布得太晚了?),因为如果您不使用 CodeMirror 而只使用 IPython Notebook,这是正确的答案。编辑:实际上 IPython Notebook 使用 CodeMirror。所以两个答案都是正确的。今天学到了新东西,谢谢! 谢谢,这适用于 chrome 中的 jupyter notebook。这似乎最简单......

以上是关于在 IPython/Jupyter Notebooks 中显示行号的主要内容,如果未能解决你的问题,请参考以下文章

iPython/jupyter qtconsole 无法在 anaconda 2.4.0 中启动

iPython/ Jupyter notebook 只清除一行输出

IPython Jupyter 中的 Julia 并行计算

pyenv ipython jupyter

当emacs尝试连接到ipython / jupyter服务器时,ein失败

在版本控制下使用 IPython / Jupyter Notebooks