如何在 VSCode 中格式化 Jupyter 笔记本?

安硕明*_*安硕明 5 jupyter visual-studio-code

我们可以在浏览器的 jupyter notebook 中格式化 python 代码。在我改用 VSCode 并使用 Microsoft 扩展后,我发现我无法再格式化 Jupyter notebook。有谁知道如何解决这个问题?

Nic*_*ico 39

正如凯尔·卡罗(Kyle Carow)在对伊恩·哈夫(Ian Huff)的回答中所说:笔记本的格式化现在已经可以使用了。

  • 苹果系统:Option+Shift+F
  • 视窗:Alt+Shift+F

按这些键将触发活动单元格的格式化,如果没有活动单元格,则将触发整个笔记本的格式化。

  • Black 格式化的每个代码单元格的末尾都会添加一个空行。 (8认同)

Pet*_*ace 18

视窗:Shift++AltF

在 VS Code 版本:1.64.2 上设置的黑色格式化程序对我有用

或者右键单击“格式化笔记本”以格式化整个笔记本。

格式化笔记本


小智 10

我不认为 VS Code 支持代码单元格的格式化,但是如果您使用black代码格式化程序,那么您可以使用 blackcellmagic%%black来格式化单元格中的代码。

您需要 pip installblackblackcellmagic,详细信息请参见:https ://github.com/csurfer/blackcellmagic


小智 7

如果您在 VS Code 中使用 Jupyter 笔记本扩展打开了 Jupyter 笔记本,则应该可以使用Ctrl+ Shift+格式化代码单元格I

我不确定此快捷方式在操作系统之间是否有所不同,您可以通过点击Ctrl+ Shift+P然后搜索“格式化单元格”来检查快捷方式是什么。然后应该会显示快捷方式。


Ian*_*uff 5

我不太确定这里问的是什么。但目前 VS Code 中的笔记本编辑器和交互窗口不支持格式化 python 代码。

不过,我们正在为这些功能转向新的 UI,它将支持 .py 文件中 VS Code 的所有格式化功能。如果您现在尝试 VS Code - Insiders,您应该会看到此支持并且可以尝试一下。这个新的 UI 最终将推出到 VS Code 稳定版本。

编辑:支持单元格格式化的新 UI 现在默认为稳定用户提供。

  • 是的,这就是我对这个问题的理解。截至目前,实际上有对 ipynb 的格式化支持,但它仅在 VS Code - Insiders 中可用。支持将在接下来的几个月内推出到稳定的 VS Code。 (3认同)
  • 新的用户界面现在应该已经为稳定用户推出了。 (2认同)

小智 5

您可以将 VS code 设置为在每次保存文件时自动格式化 Jupyter Notebook 文件。为此:

  1. 转到设置... > 设置(在 mac cmd ++ 上)
  2. 搜索“格式化笔记本”
  3. 选中“保存时格式化笔记本...”框