Python in Visual Studio Code 2023年10月发布

排版:Alan Wang

我们很高兴地宣布 Visual Studio Code 的 PythonJupyter 扩展于 2023 年 10 月发布!

此版本包括以下公告:

  • Python 调试器扩展更新
  • 弃用 Python 3.7 支持
  • Pylint 扩展更换时的 Lint 选项
  • Mypy 扩展报告的范围和守护程序模式
  • Grace Hopper 会议和开源日

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

Python 调试器扩展更新

几个月前宣布的 Debugpy 扩展已重命名为"Python Debugger",便于用户查找该扩展。

此扩展现在包括一个新的用户设置 debugpy.debugJustMyCode,禁用该设置后,允许你单步执行所有应用程序的系统或第三方库代码(默认情况下,调试器仅单步执行你自己的 Python 代码)。对于那些想要更方便地禁用所有项目的 justMyCode 的人来说,这是一个流行的功能请求,而不必在每个项目的 launch.json 调试配置中手动配置它。

若要试用,请确保已安装 Python 调试器扩展。然后打开设置 UI(File > Preferences > Settings ),搜索"debugJustMyCode"并禁用复选框:

现在,一旦您创建了一个 launch.json 文件,只要文件中 justMyCode 未指定,它就会默认使用 debugpy.debugJustMyCode 的值。请注意,指定 justMyCode 时,其值将优先于 debugpy.debugJustMyCode 设置。

Pylint 扩展更换时的 Lint 选项

默认情况下,Pylint 扩展仅在保存文件时报告错误和警告。现在有一个名为 pylint.lintOnChange 的新设置,一旦设置为 true,将使扩展能够在您键入时报告错误和警告,而无需保存文件。

Mypy 扩展报告的范围和守护程序模式

Mypy 类型检查器扩展现在有两个新设置,允许您指定 mypy 的报告范围以及是否使用 mypy 的守护程序。

第一个是 mypy-type-checker.reportingScope,可以将其设置为 file (默认值) 以允许仅针对工作区中打开的文件报告问题,或设置为 workspace 启用工作区中所有文件的报告。

第二个是 mypy-type-checker.preferDaemon,当设置为 true 时,将使用 mypy 的守护程序dmypy) 而不是 mypy 本身 (mypy) 来执行类型检查,这在某些情况下可能会快得多。

弃用 Python 3.7 支持

如之前在 2023 年 7 月的发布博客中提到的,我们已经在 Python 扩展中删除了官方的 Python 3.7 支持。没有计划主动删除对 Python 3.7的支持,因此我们预计在未来,该扩展将继续与Python 3.7非正式地合作。

请记住,Python 的所有其他版本现在都处于年度发布节奏,因此,我们预计在下一个日历年的第一个扩展版本中,一旦 Python 版本的生命周期结束,我们将停止对 Python 版本的官方支持(即 Python 3.8 计划在 2024 年 10 月达到 EOL,因此 2025 年的第一个扩展版本将停止官方支持)。

Grace Hopper 会议和开源日

9月22日,我们的团队参加了开源日!开源日是一个全天的黑客马拉松,也是 Grace Hopper Celebration 的一部分,Grace Hopper Celebration 是开源领域最大的女性和非二元技术人员庆祝活动。在本次活动中,与会者与同行以及经验丰富的导师合作,为几个开源项目做出贡献。

我们很高兴再次参加这次活动,并感谢所有与我们一起参加这次活动的导师,以及每一位为我们的项目做出贡献的参与者:

有许多"quick fix"功能问题可供那些希望做出贡献的人使用!我们希望鼓励 Python 社区以任何方式贡献和维护我们创建的各种扩展。您可以在 vscode-pythonvscode-pylintvscode-flake8vsocde-isortvscode-mypyvscode-black-formatter 存储库中找到这些问题。

其他更改和增强功能

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

  • 为 conda 环境启用"Use Existing"和"Delete and Recreate"创建环境命令(vscode-python#21828
  • 支持转到 Pylance 的 __getattr__ 定义(pylance-release#4764
  • 现在可以将为部分调用参数( python.analysis.inlayHints.callArgumentNames) 启用 inlay 提示的设置为 partial 禁用仅位置和仅关键字参数的提示,或设置为 all 启用它们 (pylance-release#4543

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

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

相关推荐
煤泥做不到的!43 分钟前
挑战一个月基本掌握C++(第十一天)进阶文件,异常处理,动态内存
开发语言·c++
F-2H1 小时前
C语言:指针4(常量指针和指针常量及动态内存分配)
java·linux·c语言·开发语言·前端·c++
bryant_meng2 小时前
【python】OpenCV—Image Moments
开发语言·python·opencv·moments·图片矩
若亦_Royi2 小时前
C++ 的大括号的用法合集
开发语言·c++
KevinRay_2 小时前
Python超能力:高级技巧让你的代码飞起来
网络·人工智能·python·lambda表达式·列表推导式·python高级技巧
Captain823Jack3 小时前
nlp新词发现——浅析 TF·IDF
人工智能·python·深度学习·神经网络·算法·自然语言处理
资源补给站3 小时前
大恒相机开发(2)—Python软触发调用采集图像
开发语言·python·数码相机
Captain823Jack3 小时前
w04_nlp大模型训练·中文分词
人工智能·python·深度学习·神经网络·算法·自然语言处理·中文分词
m0_748247553 小时前
Web 应用项目开发全流程解析与实战经验分享
开发语言·前端·php
6.944 小时前
Scala学习记录 递归调用 练习
开发语言·学习·scala