编辑器#
Spyder的多语言编辑器面板是该IDE的核心组件,您可以在此创建、打开和修改源代码文件。 编辑器提供多种核心功能,如自动补全、实时分析、语法高亮、水平和垂直分屏等。 此外,它还集成了多种强大工具,为用户带来简单易用且高效的编辑体验。
关键组件#
编辑器面板由以下区域组成:
左侧边栏显示行号,并展示当前文件中存在的任何代码分析警告。点击行号可选中该行的文本,点击行号右侧可设置断点。
滚动条允许在文件中进行垂直和水平导航。
上下文(右键单击)菜单显示与点击内容相关的操作。
选项菜单(右上角的“汉堡”图标)包含与编辑器相关的实用设置和操作。
编辑器窗格顶部的地址栏显示当前文件的完整路径。
标签栏显示所有已打开文件的名称。 它还有一个浏览标签页按钮(位于左侧),用于显示所有打开的标签页并在它们之间切换——这在打开多个标签页时非常有用。
界面#
标签页#
您可以通过标签页在编辑器中浏览和导航已打开的文件。 点击标签栏左侧的浏览标签页按钮,将显示已打开文件的列表,当前活动标签页会被勾选。
通过拖放重新排序文件,或使用选项菜单中的按字母顺序排序标签页功能,该功能还允许关闭活动标签页右侧的所有标签页,或除活动标签页外的所有标签页。
文件切换器#
编辑器具有文件切换器功能,可让您在多个已打开文件之间导航和切换。 当打开多个文件时,文件切换器有助于定位任何文件。
可以通过菜单或快捷键Ctrl-P访问,该功能包含搜索功能。 您可以输入已打开文件的任何部分名称,如果存在匹配文件,按Enter键即可切换到该文件。
分割面板#
编辑器可以按需水平或垂直分割成多个独立面板。 这样就能同时查看和编辑多个文件(或同一文件的不同部分)的内容。
通过选项菜单中的垂直分割 (Ctrl-Shift-{) 和 水平分割 (Ctrl-Shift--) 命令来分割编辑器,使用 关闭此面板 (Alt-Shift-W) 关闭选中的分割面板。
注意
会关闭一个分割面板,而 则会隐藏整个编辑器窗格(包括所有分割面板,这些分割面板在重新打开编辑器时会恢复)。
编辑功能#
语法高亮#
为了提高代码的可读性,Spyder提供了语法高亮功能,可以决定编辑器中文本的颜色和样式,以及在IPython控制台中的显示效果。
您可以在首选项 ‣ 外观下配置和预览语法高亮主题及字体。 语法高亮主题部分允许您根据个人偏好更改语法元素的颜色、样式及背景。 您可以通过下拉菜单切换可用主题,修改所选主题,创建新主题等操作。 字体部分可让您更改文本字体和大小。
注意
对语法高亮主题和字体设置的更改适用于所有源文件,无论其语言如何。
代码单元格#
在Spyder中,“代码单元”是指脚本中的一个代码块,可以轻松地在当前IPython控制台中一次性执行。 这与Jupyter Notebook和MATLAB中的“单元”行为类似。 您可以根据需要将脚本划分为任意数量的单元,或者完全不划分——选择权在您手中。
您可以通过以下开头的行来分隔单元格:
# %%(标准单元格分隔符), 或#(IPython笔记本单元格分隔符)
在分隔符右侧提供描述将使该单元格在大纲中拥有自己的名称。
您还可以通过向单元格分隔符添加更多%符号来创建"子章节",例如使用# %%%创建二级子章节,# %%%%创建三级子章节等。
这将在大纲面板中显示多个层级。
注意
这仅影响单元格在大纲中的显示方式,而不会影响在编辑器中运行它。
要运行单元格中的代码,可以使用、工具栏中的按钮或键盘快捷键(默认为Ctrl-Enter/Cmd-Return)。 您还可以使用(默认为Shift-Enter)来运行当前单元格并跳转到下一个单元格,从而快速浏览多个单元格。
自动格式化#
编辑器内置支持使用多种流行工具自动格式化代码,包括Autopep8和Black。 使用{tool}格式化文件或选中内容命令位于源代码或上下文菜单中,可以格式化选中的片段(如果有文本被选中)或整个活动文件。
您可以让编辑器在每次保存工作时自动格式化文件。 要进行设置,请前往首选项 ‣ 代码补全与检查 ‣ 代码风格与格式化 ‣ 代码格式化并勾选保存时自动格式化文件选项。
运行代码#
编辑器允许您运行整个文件以及特定的行、选区或单元格。
当您的代码正在运行时,
IPython控制台将显示输出和错误信息。
变量浏览器允许您浏览并与生成的对象进行交互。
Plots 面板用于渲染创建的图表和图像。
运行文件#
运行整个编辑器文件,可以使用菜单项、工具栏按钮或F5键。 使用来重新运行最近通过上述方式执行的文件。
运行行/选择#
您可以通过工具栏中的运行选中行或当前行选项、运行菜单或F9键来执行当前行或选中的多行代码。 运行当前行后,光标会自动跳转到下一行,因此您可以逐行调试代码。 与运行文件不同,执行的行会显示在IPython控制台中。
运行单元格#
要运行一个单元格,请将光标置于其中并使用运行 ‣ 运行单元格菜单项、运行当前单元格工具栏按钮或Ctrl-Enter / Cmd-Return键盘快捷键。 使用运行单元格并前进在运行菜单/工具栏中或Shift-Enter可在运行后跳转到下一个单元格,这对于快速浏览单元格非常有用。
运行配置#
您可以使用每个文件的运行配置对话框来设置每个文件的工作目录、控制台模式(当前、专用或外部)、命令行参数、执行选项(清除所有变量、在现有/空命名空间中运行、出错时调试)等。
要访问它,请点击 或按下 Ctrl-F6 / Cmd-F6。
代码分析与补全#
Spyder使用语言服务器协议 (LSP)为编辑器提供代码补全和代码检查功能,类似于VSCode、Neovim和其他流行的编辑器/IDE。
注意
许多与代码补全和静态检查相关的问题超出了Spyder的控制范围,这些可能是LSP(语言服务器协议)的限制或是被检查代码本身的问题,但部分问题仍有解决方法。 请参阅代码补全/帮助功能失效了解故障排除步骤。
Python 默认支持开箱即用,高级用户可以通过在下为其他语言设置 LSP 服务器来添加代码补全和语法检查支持。
代码补全#
在编辑器中默认启用了输入时的自动代码补全功能,也可以通过手动触发Ctrl-Space/Cmd-Space来显示可能的补全选项(每个选项都有弹出式帮助)和可用的代码片段。
例如,输入cla将显示关键字class、装饰器classmethod以及两个带有类模板的内置代码片段。
使用方向键和Enter键或双击选择所需的补全选项。
您可以在下启用或禁用实时代码补全功能,并修改其触发条件和显示结果。 Spyder还允许您在下定义自定义补全代码片段,这些片段将作为LSP提供功能的补充。
代码检查与风格规范#
Spyder可以选择性地在编辑器中高亮显示语法错误、样式问题以及代码中的其他潜在问题,这有助于您快速发现错误并使代码更易于阅读和理解。
编辑器的基础语法检查功能由Pyflakes提供,可警告代码中的语法错误和潜在缺陷。 该功能默认启用,可在下禁用或自定义。
代码风格分析功能由Pycodestyle提供支持,用于标记与PEP 8风格规范的偏差。 该功能默认不启用,但您可以通过下的选项来启用它,并自定义显示的Pycodestyle错误代码。
内省特性#
如果你想查看某个函数、类或变量的定义,需要在编辑器中Ctrl/Cmd-点击其名称(或点击名称后按下Ctrl-G / Cmd-G跳转到声明该元素的文件和行号位置。
你可以悬停在对象名称上获取弹出帮助,如帮助面板文档中所述。
最后,如果您输入函数名、方法名或类构造函数名后跟左括号,将弹出调用提示框,在您输入参数时显示函数的参数列表及其文档摘要。 这些功能可以在中启用和自定义。
键盘快捷键#
要查看编辑器的主要键盘快捷键,请参考部分。 完整列表可在中浏览、搜索和自定义(双击)。