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

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

相关推荐
bst@微胖子1 小时前
Python高级语法之selenium
开发语言·python·selenium
王小义笔记1 小时前
Postman如何流畅使用DeepSeek
开发语言·测试工具·lua·postman·deepseek
查理零世2 小时前
【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python
python·算法·蓝桥杯
魔尔助理顾问3 小时前
一个简洁高效的Flask用户管理示例
后端·python·flask
java1234_小锋3 小时前
一周学会Flask3 Python Web开发-request请求对象与url传参
开发语言·python·flask·flask3
流星白龙5 小时前
【C++】36.C++IO流
开发语言·c++
诚信爱国敬业友善6 小时前
常见排序方法的总结归类
开发语言·python·算法
nbsaas-boot7 小时前
Go 自动升级依赖版本
开发语言·后端·golang
架构默片7 小时前
【JAVA工程师从0开始学AI】,第五步:Python类的“七十二变“——当Java的铠甲遇见Python的液态金属
java·开发语言·python
不只会拍照的程序猿8 小时前
从插入排序到希尔排序
java·开发语言·数据结构·算法·排序算法