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 页面提交问题

相关推荐
Sirius.z8 小时前
第R6周:LSTM实现糖尿病探索与预测
python
名字还没想好☜8 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
·薯条大王8 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
Dxy12393102169 小时前
Python 如何使用 MySQL 的事务
python·mysql
一壶浊酒..11 小时前
Scrape Webpack练习
开发语言·javascript·webpack
命运之光12 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
命运之光12 小时前
【C语言完整代码】图书管理系统:图书馆场景下的增删改查实战
c语言·开发语言
猿长大人13 小时前
C# | Serilog 新手入门
开发语言·c#·.net·log
今儿敲了吗13 小时前
Python ——第三方包
笔记·python
麒麟水手13 小时前
国产银河麒麟系统开发实录:跑通Streamlit,我踩过的6个坑
python