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

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

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

【问题讨论】:

  • 更改 ipython 笔记本的默认行为使其默认显示行号也很有用

标签: python ipython jupyter


【解决方案1】:
  1. Escape 使左侧部分变为蓝色。

  1. 然后按 L。有效!

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

  3. 如果要影响所有 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。我引用:

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

          jupyter --config-dir
          
        2. 从那里打开或创建custom 文件夹。

        3. 在该文件夹中,您应该找到一个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) 显示行号

                  【讨论】:

                  【解决方案12】:

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

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

                  【讨论】:

                  • 我不明白这个答案是如何不被接受的(可能发布得太晚了?),因为如果您不使用 CodeMirror 而只使用 IPython Notebook,这是正确的答案。编辑:实际上 IPython Notebook 使用 CodeMirror。所以两个答案都是正确的。今天学到了新东西,谢谢!
                  • 谢谢,这适用于 chrome 中的 jupyter notebook。这似乎最简单......
                  猜你喜欢
                  • 2016-01-13
                  • 1970-01-01
                  • 2019-12-12
                  • 2013-09-15
                  • 2017-07-11
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多