技术速递|Python in Visual Studio Code 2024年4月发布

排版:Alan Wang

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

此版本包括以下公告:

  • 改进了 Flask 和 Django 的调试配置流程
  • Jupyter Run Dependent Cells with Pylance 的模块和导入分析
  • Hatch 环境发现
  • 为 pipenv、pyenv 和 Poetry 项目自动选择环境
  • "报告问题"命令改进

如果您有兴趣,可以在我们的 Python、Jupyter 和 Pylance 扩展更新日志中查看完整的改进列表。

改进了 Flask 和 Django 的调试配置流程

为 Flask 和 Django 应用程序创建启动配置变得更加容易!我们进行了改进,当您在工作区中创建launch.json时,它会自动检测工作区中可能的启动文件。对于 Django,Python 调试器扩展会在工作区中低一级的根目录或子目录中查找manage.pyapp.py。对于 Flask,扩展名将查找wsgi.pyapp.py 或包含 Flask 应用程序声明的init.py文件(例如app = Flask())。如果在项目中找不到这些文件,则下拉列表将显示相应项目类型的"Default"选项,即使该文件可能不存在。

如果未检测到您的文件,您可以直接输入文件路径或浏览目录中的其他文件。

Jupyter's Run Dependent Cells with Pylance 的模块和导入分析

Jupyter 单元的依赖性分析在最新的 Pylance 预发布版本中得到了改进。通过这些更改,Pylance 可帮助 Jupyter 理解模块导入,这在单元格导入上一个单元格中定义的模块时特别有用。

若要启用此功能,请在 VS Code Insiders 中安装最新的 Pylance 预发行版,并启用jupyter.executionAnalysis.enabled and notebook.consolidatedRunButton设置。

Hatch 环境发现

默认情况下,现在会发现并激活 Hatch 环境,类似于其他常见环境,例如 Venv、Conda 和 Poetry。此外,对于未注册显式环境标识符的 Hatch,扩展能够从环境定位器确定环境类型 (Hatch)。

为 pipenv、pyenv 和 Poetry 项目自动选择环境

如果您的工作空间包含 pipenv、pyenv 或 Poetry 环境,现在会自动为您的工作空间选择相应的环境。以前,扩展程序正确发现了这些环境,但选择了默认的全局解释器,这需要手动为工作区选择适当的环境。现在,Python 扩展根据默认环境的存在和任何相应的配置文件来推断默认环境。例如,在 pyenv 的情况下,扩展会查看.python-version文件以自动为工作区选择适当的解释器。

"Report Issue"命令改进

PythonPython Debugger 扩展已进行更新,使您可以更轻松地向我们的存储库报告问题!使用"Report Issue"命令 (workbench.action.openIssueReporter) 提交问题可以完成大部分繁重的工作,提示您提供更多信息,以便我们的团队可以有效地对您遇到的问题进行分类。

要使用 @vscode-python@vscode-python-debugger 的"Report Issue"命令提交问题,请分别从扩展下拉列表中选择 Python 或 Python Debugger。

其他更改和增强功能

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

  • @pylance-release#4345 中"Move to file"重构失败时出现更明确的错误消息
  • REPL Smart Send (python.REPL.enableREPLSmartSend) 现在默认启用

我们还要特别感谢本月的贡献者:

征集社区反馈

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

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

相关推荐
uppp»21 分钟前
深入理解 Java 反射机制:获取类信息与动态操作
java·开发语言
Yan-英杰23 分钟前
百度搜索和文心智能体接入DeepSeek满血版——AI搜索的新纪元
图像处理·人工智能·python·深度学习·deepseek
weixin_307779131 小时前
Azure上基于OpenAI GPT-4模型验证行政区域数据的设计方案
数据仓库·python·云计算·aws
玩电脑的辣条哥2 小时前
Python如何播放本地音乐并在web页面播放
开发语言·前端·python
多想和从前一样5 小时前
Django 创建表时 “__str__ ”方法的使用
后端·python·django
ll7788115 小时前
LeetCode每日精进:20.有效的括号
c语言·开发语言·算法·leetcode·职场和发展
小喵要摸鱼6 小时前
【Pytorch 库】自定义数据集相关的类
pytorch·python
bdawn7 小时前
深度集成DeepSeek大模型:WebSocket流式聊天实现
python·websocket·openai·api·实时聊天·deepseek大模型·流式输出
Jackson@ML7 小时前
Python数据可视化简介
开发语言·python·数据可视化
mosquito_lover17 小时前
怎么把pyqt界面做的像web一样漂亮
前端·python·pyqt