Python in Visual Studio Code 2024年3月发布

排版:Alan Wang

我们很高兴地宣布 2024 年 3 月发布适用于 Visual Studio Code 的 PythonJupyter 扩展!

此版本包括以下公告:

  • 新的"Add Imports"代码操作设置
  • 调试 Django 或 Flask 应用时自动启动浏览器
  • Python REPL 的 Shell 集成
  • 对本地运行的 Jupyter 服务器的语言支持
    如果您有兴趣,可以在 PythonJupyterPylance 扩展的更新日志中查看完整的改进列表。

新的"添加导入代码操作"启发式设置

在 Python 项目中缺少导入时触发的 Add Import 快速修复 (💡) 已在 Pylance 扩展的预发布版本中进行了改进!Pylance 现在使用启发式方法,仅显示前 3 个高置信度导入选项,优先级基于:最近使用的导入、来自同一模块的符号、来自标准库的符号、来自用户模块的符号、来自第三方包的符号,最后按模块和符号名称排序。如果 3 个高置信度导入选项不是您要查找的选项,Pylance 引入了一个新的代码操作:Search for additional import matches,该操作显示一个快速选择菜单,允许您搜索与缺少的导入符号前缀匹配的导入选项。

此外,Pylance 还引入了 Change spelling 操作,该操作为由于拼写错误而丢失的导入提供了导入建议。

我们计划很快默认启用此新行为。但是,与此同时,您现在可以通过设置 python.analysis.addImport.heuristics : "true" 来启用它。

调试 Django 或 Flask 应用时自动启动浏览器

现在,使用 Python 调试器扩展,开发和测试 Python Web 应用程序更加方便!现在,可以通过在 launch.json 中设置 autoStartBrowser: true,在使用 Django 或 Flask 应用启动调试器时自动打开浏览器:

json 复制代码
{
    "name": "Python Debugger: Flask",
    "type": "debugpy",
    "request": "launch",
    "module": "flask",
    "env": {
        "FLASK_APP": "hello_app.webapp",
        "FLASK_DEBUG": "1"
    },
    "args": [
        "run"
    ],
    "jinja": true,
    "autoStartBrowser": true
}

Python REPL 的 Shell 集成

现在,我们在 Mac、Linux 和 Windows 上启用了 Python REPL 的 shell 集成(使用 WSL 扩展时)。在 Python REPL 中执行命令时,彩色圆圈装饰器将指示命令是成功还是失败。这还支持 Terminal: Run Recent Command 命令,允许您查看和利用 REPL 的命令历史记录。此外,此功能允许通过 Terminal: Run Recent Command 访问所有操作系统的 Python shell 文件历史记录。

对本地运行的 Jupyter 服务器的语言支持

以前,在连接到本地 Jupyter 服务器时,Jupyter 扩展将这些服务器视为远程服务器,因此 Pylance 扩展无法检测到已安装的软件包。在此迭代中,我们进行了更改,以便 Jupyter 扩展检测连接的 Jupyter 服务器是本地服务器还是远程服务器,因此 Pylance 现在能够基于本地 Python 环境中安装的包提供更丰富的语言功能。

其他更改和增强功能

我们还添加了一些小的增强功能,并修复了用户请求的问题,这些问题应该可以改善你在 Visual Studio Code 中使用 Python 和 Jupyter Notebook 的体验。一些值得注意的变化包括:

征集社区反馈意见

当我们计划和优先考虑未来的工作时,我们重视您的反馈!以下是我们希望得到反馈的几个问题:

通过从市场下载 Python 扩展Jupyter 扩展来试用这些新的改进,或直接从 Visual Studio Code 中的扩展视图(Ctrl + Shift + X 或 ⌘ + ⇧ + X)安装它们。可以在文档中详细了解 Visual Studio Code 中的 Python 支持。如果遇到任何问题或有建议,请在 Python VS Code GitHub 页面提交问题

相关推荐
iCxhust29 分钟前
c# U盘映像生成工具
开发语言·单片机·c#
yangzhi_emo1 小时前
ES6笔记2
开发语言·前端·javascript
emplace_back2 小时前
C# 集合表达式和展开运算符 (..) 详解
开发语言·windows·c#
jz_ddk2 小时前
[学习] C语言数学库函数背后的故事:`double erf(double x)`
c语言·开发语言·学习
萧曵 丶2 小时前
Rust 所有权系统:深入浅出指南
开发语言·后端·rust
xiaolang_8616_wjl2 小时前
c++文字游戏_闯关打怪2.0(开源)
开发语言·c++·开源
收破烂的小熊猫~3 小时前
《Java修仙传:从凡胎到码帝》第四章:设计模式破万法
java·开发语言·设计模式
蹦蹦跳跳真可爱5893 小时前
Python----OpenCV(图像増强——高通滤波(索贝尔算子、沙尔算子、拉普拉斯算子),图像浮雕与特效处理)
人工智能·python·opencv·计算机视觉
nananaij3 小时前
【Python进阶篇 面向对象程序设计(3) 继承】
开发语言·python·神经网络·pycharm