0

0

VSCode如何配置Python开发环境 VSCode搭建Python项目的详细步骤

星夢妙者

星夢妙者

发布时间:2025-07-31 19:29:01

|

590人浏览过

|

来源于php中文网

原创

vscodepython虚拟环境的最佳实践是为每个项目创建独立的虚拟环境,使用python -m venv .venv或conda命令创建,将.venv加入.gitignore避免提交,并在vscode中通过左下角选择解释器确保正确激活该环境;2. 配置代码规范和自动格式化需安装black并设置"python.formatting.provider": "black"和"editor.formatonsave": true,同时配置flake8或pylint进行实时代码检查,在settings.json中启用并设置相关参数;3. 进行单元测试和代码覆盖率分析需安装pytest和pytest-cov,启用python扩展的pytest支持并配置测试目录,在vscode测试视图中运行测试,通过pytest --cov=. --cov-report=html生成html覆盖率报告,实现高效的测试与质量监控。

VSCode如何配置Python开发环境 VSCode搭建Python项目的详细步骤

VSCode配置Python开发环境,搭建Python项目,核心在于几步:安装Python本身,接着在VSCode里装上官方的Python扩展,然后最关键的是,学会如何创建并管理虚拟环境,确保项目依赖的隔离与整洁。项目搭建则围绕着一个清晰的目录结构、虚拟环境的激活以及依赖包的安装展开。

解决方案

说实话,每次开始一个新的Python项目,我都会习惯性地打开VSCode,然后按照一套自己摸索出来的流程走一遍。这套流程不一定是最“官方”的,但对我来说,它能确保开发环境的稳定和项目的可重复性。

首先,你得确保系统里已经安装了Python。这听起来是废话,但真的有人跳过这步就直接在VSCode里找Python解释器。我个人偏好从Python官网下载安装包,或者用Miniconda/Anaconda来管理,后者在数据科学领域尤其方便。

立即学习Python免费学习笔记(深入)”;

Python装好后,打开VSCode。第一件事就是去扩展商店(Extensions)搜索“Python”,找到由Microsoft官方提供的那个,毫不犹豫地点击安装。这个扩展是VSCode里Python开发的灵魂,没有它,很多便利功能都无从谈起。

接下来,就是处理Python解释器的问题。在一个新的项目文件夹里,我通常会打开终端(VSCode里可以直接Ctrl+打开),然后执行命令来创建一个虚拟环境。比如,如果你用venv`模块:

python -m venv .venv

我喜欢把虚拟环境命名为.venv,这样它在文件管理器里通常会隐藏起来,而且在.gitignore里加一行也很方便。如果用Conda,那就是:

conda create -n my_project_env python=3.9
conda activate my_project_env

虚拟环境创建后,VSCode通常会自动检测到它并提示你选择。如果没有,你可以点击VSCode左下角的Python版本号,或者按Ctrl+Shift+P(或Cmd+Shift+P),输入“Python: Select Interpreter”,然后选择你刚刚创建的虚拟环境中的Python解释器。这一步至关重要,它确保你安装的所有库都只在这个项目的沙盒里,不会污染全局环境,也不会和其他项目冲突。

环境选定后,就可以开始安装项目所需的依赖了。如果你有一个requirements.txt文件,直接在VSCode的终端里激活虚拟环境(如果VSCode没有自动激活),然后运行:

pip install -r requirements.txt

如果还没有,可以先安装一些基础库,比如requests或者numpy,然后随时通过pip freeze > requirements.txt来生成这个文件。

最后,创建一个主文件,比如main.py,写上你的代码。VSCode的Python扩展会提供代码补全、语法检查、调试等一系列功能,让你的开发体验流畅起来。

VSCode中Python虚拟环境的最佳实践是什么?

关于虚拟环境,我总觉得它像是给每个项目量身定制的“工具箱”。不把它用好,后期项目依赖一多,冲突起来简直是噩梦。我的经验是,始终为每个项目创建一个独立的虚拟环境,哪怕这个项目看起来很简单。

创建虚拟环境的方式,前面提到了venvconda。对于纯Python项目,venv轻量且足够。如果你涉及数据科学、机器学习,或者需要管理非Python依赖(比如某些C/C++库),Conda会是更好的选择,因为它能管理更广泛的包类型。

命名上,我个人偏好.venv,因为它简洁、约定俗成,而且在大多数IDE和版本控制工具中(比如Git),都很容易被忽略掉,避免不必要的提交。

在VSCode中,确保你总是选择了正确的解释器。有时候,VSCode可能会默认选择系统的Python,或者之前项目的虚拟环境。一旦发现代码补全不工作,或者导入模块报错,第一反应就应该去检查左下角的解释器是否正确。

另外,别忘了把你的虚拟环境目录(比如.venv/)添加到.gitignore文件中。虚拟环境是本地的、可重建的,不应该被提交到版本控制系统里。这样既能保持代码库的整洁,也能让团队成员在各自的环境中自由搭建。

VSCode中Python代码规范和自动格式化工具如何配置?

代码规范这东西,我以前觉得是束缚,现在却觉得是解放。统一的代码风格能让团队协作效率倍增,也方便自己回顾旧代码。在VSCode里,配置这些工具简直是小菜一碟。

最常用的格式化工具是Black,它被戏称为“不妥协的格式化工具”,因为它的格式化规则非常固定,几乎没有配置项,这反而省去了团队内部为风格争论的时间。

MedPeer
MedPeer

AI驱动的一站式科研服务平台

下载

安装Black很简单:

pip install black

然后在VSCode的settings.json(可以通过Ctrl+,打开设置,然后点击右上角的{}图标进入)中,添加或修改以下配置:

{
    "python.formatting.provider": "black",
    "editor.formatOnSave": true, // 保存时自动格式化
    "[python]": {
        "editor.defaultFormatter": "ms-python.python" // 确保Python文件使用Python扩展的格式化器
    }
}

这样,每次你保存Python文件时,Black就会自动帮你格式化代码。简直是强迫症的福音。

除了格式化,代码质量检查(Linting)也同样重要。我常用的是Flake8和Pylint。Flake8更轻量,专注于PEP 8规范和一些常见错误。Pylint则更严格,能发现更多潜在的问题和“坏味道”。

安装它们:

pip install flake8 pylint

同样在settings.json中配置:

{
    "python.linting.enabled": true,
    "python.linting.flake8Enabled": true,
    "python.linting.pylintEnabled": false, // 可以根据需要开启Pylint
    "python.linting.lintOnSave": true,
    "python.linting.flake8Args": [ // Flake8的一些自定义参数
        "--max-line-length=120",
        "--ignore=E203,W503" // 忽略一些不那么严格的规则
    ]
}

配置好这些,VSCode就会在编辑器中实时显示代码中的警告和错误,让你在编写时就能及时发现并修正问题,大大提升代码质量。

VSCode中如何进行Python单元测试和代码覆盖率分析?

写代码,尤其是在项目逐渐复杂之后,测试的重要性就凸显出来了。单元测试能确保你代码的每个小部分都按预期工作,而代码覆盖率则告诉你测试到底覆盖了多少代码。VSCode对Python的测试支持做得相当不错。

Python社区里,unittest标准库自带的测试框架,而pytest则因其简洁、灵活和强大的插件生态而广受欢迎。我个人更倾向于pytest

首先,确保你的项目里安装了pytest

pip install pytest pytest-cov # pytest-cov用于代码覆盖率分析

在VSCode中,Python扩展会自动检测你的测试框架。你可以在左侧的“测试”视图(一个烧杯图标)中看到它。如果没看到,或者它没有检测到你的测试,你需要手动配置一下。

settings.json中,可以这样配置:

{
    "python.testing.pytestEnabled": true,
    "python.testing.unittestEnabled": false, // 如果你用pytest,可以禁用unittest
    "python.testing.pytestArgs": [
        "tests" // 告诉pytest去哪个目录查找测试文件
    ],
    "python.testing.autoTestDiscoverOnSave": true // 保存时自动发现测试
}

假设你的测试文件都在一个名为tests的文件夹里,并且以test_开头(这是pytest的默认约定)。

配置完成后,你就可以在“测试”视图里看到所有的测试用例。点击运行按钮,或者在代码中点击测试函数旁边的绿色小箭头,就能直接运行测试。失败的测试会清晰地标示出来,并显示错误信息。

至于代码覆盖率,pytest-covpytest的一个插件,可以很方便地生成覆盖率报告。当你运行测试时,如果配置了pytest-cov,它会在终端输出覆盖率信息,或者生成一个HTML报告。

要生成HTML报告,可以在终端运行:

pytest --cov=. --cov-report=html

这会在你的项目根目录下生成一个htmlcov文件夹,里面就是详细的覆盖率报告,你可以用浏览器打开htmlcov/index.html查看。虽然VSCode本身没有内置的代码覆盖率可视化功能(需要额外插件,如Coverage Gutters),但通过这种方式查看报告也足够清晰了。

总的来说,VSCode配合Python扩展,加上这些工具的配置,能让你的Python开发体验变得非常高效和愉悦。这不仅仅是工具的堆砌,更是通过工具来固化一套良好的开发习惯,从而提升个人和团队的生产力。

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

727

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

630

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

747

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

617

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1236

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

575

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

702

2023.08.11

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

177

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
go语言零基础开发内容管理系统
go语言零基础开发内容管理系统

共34课时 | 2.5万人学习

第二十三期_前端开发
第二十三期_前端开发

共98课时 | 7.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号