>  기사  >  개발 도구  >  Python 프로그래밍에 vscode를 사용하는 방법

Python 프로그래밍에 vscode를 사용하는 방법

王林
王林원래의
2019-12-12 16:16:085579검색

Python 프로그래밍에 vscode를 사용하는 방법

VS Code에 Python 확장 설치

우선 VS Code에서 Python 개발을 더욱 편리하게 하려면 VS Code 확장 스토어에서 Python 확장을 설치해야 합니다.

Python 확장이 설치된 후 Python 확장 구성을 시작할 수 있습니다.

VS Code는 두 개의 JSON 파일을 통해 설정을 관리합니다.

한 파일은 모든 프로젝트에 적용되는 VS Code의 전역 설정에 사용되고, 다른 파일은 단축키를 사용하여 개별 프로젝트에 사용할 수 있는 특수 설정에 사용됩니다. Ctrl+, (쉼표) 키를 눌러 전역 설정을 엽니다.

Python 경로 설정

전역 설정에서 python.pythonPath를 구성하여 VS Code가 각 프로젝트에 가장 적합한 Python 인터프리터를 자동으로 선택하도록 할 수 있습니다. python.pythonPath 使 VS Code 自动为每个项目选择最适合的 Python 解释器。

// 将设置放在此处以覆盖默认设置和用户设置。
// Path to Python, you can use a custom version of Python by modifying this setting to include 
the full path.
{    
"python.pythonPath":"${workspaceRoot}/.venv/bin/python",
}

这样,VS Code 将使用虚拟环境目录 .venv 下项目根目录中的 Python 解释器。

使用环境变量

默认情况下,VS Code 使用项目根目录下的 .env 文件中定义的环境变量。 这对于设置环境变量很有用,如:

PYTHONWARNINGS="once"

可使程序在运行时显示警告。

可以通过设置 python.envFile 来加载其他的默认环境变量文件:

// Absolute path to a file containing environment variable definitions.
"python.envFile": "${workspaceFolder}/.env",

代码分析

Python 扩展还支持不同的代码分析工具(pep8、flake8、pylint)。要启用你喜欢的或者正在进行的项目所使用的分析工具,只需要进行一些简单的配置。

扩展默认情况下使用 pylint 进行代码分析。你可以这样配置以使用 flake8 进行分析:

"python.linting.pylintEnabled": false,
"python.linting.flake8Path": "${workspaceRoot}/.venv/bin/flake8",
"python.linting.flake8Enabled": true,
"python.linting.flake8Args": ["--max-line-length=90"],

启用代码分析后,分析器会在不符合要求的位置加上波浪线,鼠标置于该位置,将弹窗提示其原因。注意,项目的虚拟环境中需要安装有 flake8,此示例方能有效。

格式化代码

可以配置 VS Code 使其自动格式化代码。目前支持 autopep8、black 和 yapf。下面的设置将启用 “black” 模式。

// Provider for formatting. Possible options include 'autopep8', 'black', and 'yapf'.
"python.formatting.provider": "black",
"python.formatting.blackPath": "${workspaceRoot}/.venv/bin/black"
"python.formatting.blackArgs": ["--line-length=90"],"editor.formatOnSave": true,

如果不需要编辑器在保存时自动格式化代码,可以将 editor.formatOnSave 设置为 false

{    // See https://go.microsoft.com/fwlink/?LinkId=733558    
// for the documentation about the tasks.json format    
"version": "2.0.0",    
"tasks": [    
{     
"label": "Run Debug Server",    
"type": "shell",    
"command": "${workspaceRoot}/.venv/bin/flask run -h 0.0.0.0 -p 5000",    
"group": {    
"kind": "build",    
"isDefault": true   
}    
}    
]
}

이런 방식으로 VS Code는 가상 환경 디렉터리 .venv 아래의 프로젝트 루트 디렉터리에 있는 Python 인터프리터를 사용합니다.

환경 변수 사용

기본적으로 VS Code는 프로젝트 루트 디렉터리의 .env 파일에 정의된 환경 변수를 사용합니다. 이는 프로그램이 실행되는 동안 경고를 표시하도록

FLASK_APP=wsgi.py
FLASK_DEBUG=True

와 같은 환경 변수를 설정하는 데 유용합니다.

python.envFile:

"python.unitTest.pyTestEnabled": true,
"python.unitTest.pyTestPath": "${workspaceRoot}/.venv/bin/pytest",

코드 분석

Python 확장은 다양한 코드 분석 도구(pep8, flake8, pylint)도 지원합니다. 작업 중인 프로젝트에 대해 좋아하거나 사용 중인 분석 도구를 활성화하려면 몇 가지 간단한 구성만 하면 됩니다.

확장 프로그램은 코드 분석을 위해 기본적으로 pylint를 사용합니다. 분석을 위해 flake8을 사용하도록 다음과 같이 구성할 수 있습니다.

rrreee

코드 분석을 활성화한 후 분석기는 요구 사항을 충족하지 않는 위치에 물결 모양 선을 추가합니다. 이 위치에 마우스를 놓으면 팝업 창이 나타납니다. 이유를 물어보세요. 이 예제가 유효하려면 flake8을 프로젝트의 가상 환경에 설치해야 합니다.

코드 형식 지정

코드 형식을 자동으로 지정하도록 VS Code를 구성할 수 있습니다. 현재 autopep8, black 및 yapf를 지원합니다. 아래 설정은 "검정색" 모드를 활성화합니다. rrreee저장 시 자동으로 코드 서식을 지정하는 편집기가 필요하지 않은 경우 editor.formatOnSavefalse로 설정하고 Ctrl + Shift + 단축키를 사용하여 수동으로 서식을 지정할 수 있습니다. I 현재 문서에 코드를 작성합니다.

이 예제가 유효하려면 프로젝트의 가상 환경에 black을 설치해야 합니다.

작업 실행

VS Code의 중요한 기능은 작업을 실행할 수 있다는 것입니다. 실행해야 하는 작업은 프로젝트 루트 디렉터리에 JSON 파일로 저장됩니다.

🎜Flask 개발 서버 실행🎜🎜🎜🎜이 예제에서는 Flask 개발 서버를 실행하는 작업을 생성합니다. 외부 명령을 실행할 수 있는 기본 템플릿을 사용하여 새 프로젝트를 만듭니다. 🎜🎜아래에 표시된 대로 task.json 파일을 편집하여 Flask 개발 서비스를 실행하는 새 작업을 만듭니다. 🎜rrreee🎜Flask 개발 서비스는 환경 변수를 사용하여 애플리케이션의 진입점. 환경 변수 사용 섹션에서 언급한 대로 .env 파일에서 다음 변수를 선언할 수 있습니다. 🎜rrreee🎜 그런 다음 단축키 Ctrl + Shift + B를 사용하여 작업을 수행할 수 있습니다. 🎜🎜🎜단위 테스트🎜🎜🎜VS Code는 단위 테스트 프레임워크인 pytest, unittest 및 nosetest도 지원합니다. 테스트 프레임워크를 활성화한 후 검색된 단위 테스트를 개별적으로 실행하거나, 테스트 모음을 통해 테스트를 실행하거나, VS Code에서 모든 테스트를 실행할 수 있습니다. 🎜🎜예를 들어 다음과 같이 pytest 테스트 프레임워크를 활성화할 수 있습니다. 🎜rrreee🎜참고: 이 예제가 유효하려면 프로젝트의 가상 환경에 pytest를 설치해야 합니다. 🎜🎜추천 관련 기사 및 튜토리얼: 🎜vscode 튜토리얼🎜🎜

위 내용은 Python 프로그래밍에 vscode를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.