我们很高兴地宣布,2023年2月版 Visual Studio Code Python 和 Jupyter 扩展现已推出!
此版本包括以下改进:
从激活的终端启动 VS Code 时的自动选择环境
使用命令 Python: Create Environmen 时可选择需求文件或可选依赖项
预发布:改进了 Pylance 对 pytest 的 IntelliSense 支持
Jupyter 内核选择器改进
如果您有兴趣,可以在我们的更新日志中查看 Python、Jupyter 和 Pylance 扩展的完整改进列表。
从激活的终端启动 VS Code 时的自动选择环境
当用户通过已激活 conda 或虚拟环境的终端启动 VS Code 时,VS Code 现在会检测到该激活的环境。根据环境类型,VS Code 自动选择环境本身,或询问用户是否要选择现有环境。此功能旨在通过自动选择环境而不需要手动选择来改进您的工作流程。
使用命令 Python: Create Environment 时可选择需求文件和可选依赖项
我们将根据您的反馈继续改进 Python: Create Environment 命令!以前,当用户使用该命令创建环境时,该命令会搜索常见的需求和依赖文件并自动将它们加载到环境中。现在,该命令在工作区文件夹中查找需求文件,并允许用户多选任意数量的需求以快速选择安装。
或者,Python 扩展检测并读取 pyproject.toml 文件的 [project.optional-dependencies] 表中提供的可选依赖项。然后,我们使用 pip install--editable 命令执行任何选定的可选依赖项的安装(执行可编辑安装将以它们在未来版本中成为 pyproject.toml 中的 [build-system] 表为条件)。这被集成为 Python 中的快速选择:Python: Create Environment 命令。
预发布:改进 Pylance 对 pytest 的 IntelliSense 支持
我们很高兴地宣布在 Pylance 的预发布版本中支持 pytest fixtures 和参数化!此更新包括强大的功能,可以帮助您在使用 pytest 编写和维护清晰、简洁且易于理解的测试时更高效地工作。
由于增加了对转到定义和查找所有引用的支持,您可以更方便地导航和阅读测试。此功能还支持使用符号重命名 (F2) 进行快速更新:
Pylance 还为 pytest fixtures 和参数化参数提供补全,以帮助您更有效地编写测试:
将类型提示添加到 pytest fixture 参数可以帮助进一步提高测试的可读性并在错误成为问题之前捕获它。Pylance 现在提供了两个功能,使这个过程更加实用:您可以触发代码操作(在 macOS 上为 Cmd + . ,在 Windows/Linux 上为Ctrl + .)来注释 pytest 参数的类型,或者甚至通过"python.analysis.inlayHints.pytestParameters"设置启用嵌入提示(然后只需双击提示即可将其插入到您的代码中)。
Pylance 还将根据提供给装饰器的参数值推断参数化 pytest 参数的类型:
您可以通过安装 Pylance 扩展的预发布版本来尝试这些更新,并在https://github.com/microsoft/pylance-release 报告您可能遇到的任何问题。
Jupyter 内核选择器改进
我们继续改进 MRU(最近使用)内核选择器。它可以通过设置 "notebook.kernelPicker.type"为启用"mru"。未使用的内核将移至辅助选择器“选择另一个内核...”。当您安装了最新的 Jupyter 扩展和 Python 扩展时,此选择器将按其来源(例如:“Jupyter 内核”、“Python环境”等)对所有内核进行分组。
其他变化和增强
我们还添加了一些小的增强功能并修复了用户请求的问题,这些功能应该可以改善您在 Visual Studio Code 中使用 Python 和 Jupyter Notebooks 的体验。一些显著的变化包括:
Join Selected Cells ( kb(notebook.cell.joinSelected)) 在 Jupyter Notebooks 中将多个选定的单元格合并为一个单元格
将输出回退呈现为 Jupyter 中受支持的 mimetype (vscode-jupyter#8635)
Pylance 代码操作 refactor.extract 的新类型:refactor。extract.method 和 refactor.extract.variable (pylance-release#3803)
我们还要特别感谢本月的贡献者:
@enthusiastic2003:修复运行路径中带括号的 Python 文件的问题(vscode-python#20414)
通过从 Marketplace 更新或下载 Python 扩展和 Jupyter 扩展来尝试这些新改进,或者直接从 Visual Studio Code 中的扩展视图安装它们(Ctrl + Shift + X 或 ⌘ + ⇧ + X)。您可以在文档中了解有关 Visual Studio Code Python 的更多信息。如果您遇到任何问题或有建议,请在 Python VS Code GitHub 页面上提出问题,或在本文下方留言。谢谢!
参考链接:
Python 1:https://marketplace.visualstudio.com/items?itemName=ms-python.python
Jupyter 1:https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter
Python 2:https://github.com/microsoft/vscode-python/releases
Jupyter 2:https://github.com/microsoft/vscode-jupyter/blob/main/CHANGELOG.md
Pylance:https://github.com/microsoft/pylance-release/blob/main/CHANGELOG.md
Pylance 扩展的预发布版本:https://devblogs.microsoft.com/python/python-in-visual-studio-code-june-2022-release/#pre-release-pylance-extension
文档:https://code.visualstudio.com/docs/python/python-tutorial
提出问题:https://github.com/microsoft/vscode-python/issues/new/choose