이 출시되었습니다! 11월의 새로운 기능 및 수정 사항을 읽어보세요.

Visual Studio Code에서 Python 린팅

린팅은 Python 소스 코드의 의미론적 및 스타일 문제를 강조 표시하여 종종 오류로 이어질 수 있는 미묘한 프로그래밍 오류 또는 코딩 관행을 식별하고 수정하는 데 도움이 됩니다. 예를 들어, 린팅은 정의되지 않은 변수 사용, 정의되지 않은 함수 호출, 누락된 괄호, 심지어 내장 유형 또는 함수를 다시 정의하려고 시도하는 것과 같은 더 미묘한 문제를 감지할 수 있습니다. 린팅은 포맷팅과 다르며, 린팅은 코드 실행 방식을 분석하고 오류를 감지하는 반면, 포맷팅은 코드 모양을 재구성하는 데만 사용됩니다.

참고: Python 확장의 언어 서버에서 구문 오류 감지가 기본적으로 활성화됩니다. 언어 서버를 구성하는 방법에 대한 자세한 내용은 언어 서버 설정을 참조하세요. 이 문서는 스타일 검사를 포함하여 추가 코드 감지를 위한 린팅을 활성화하는 방법을 다룹니다.

린터 선택

선택한 린터의 VS Code Marketplace에서 린터 확장 프로그램을 검색하세요. 원하는 경우 여러 린터를 동시에 사용할 수 있습니다.

Microsoft는 Python에 대해 다음 린팅 확장 프로그램을 게시합니다.

린터 확장 프로그램
Pylint https://marketplace.visualstudio.com/items?itemName=ms-python.pylint
flake8 https://marketplace.visualstudio.com/items?itemName=ms-python.flake8
mypy https://marketplace.visualstudio.com/items?itemName=ms-python.mypy-type-checker

커뮤니티에서 제공하는 린팅 확장 프로그램

린터 확장 프로그램
Ruff https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff
mypy https://marketplace.visualstudio.com/items?itemName=matangover.mypy

참고: 위의 표나 Marketplace에서 선호하는 린터를 찾을 수 없는 경우 확장을 통해 지원을 추가할 수 있습니다. Python 확장 프로그램 템플릿을 사용하여 VS Code에 새로운 Python 도구를 통합할 수 있습니다.

일반 설정

각 린터 확장 프로그램의 README를 참조하여 지원되는 설정에 대한 자세한 내용을 확인할 수 있습니다. 다음 설정은 대부분의 린터 확장 프로그램에서 지원됩니다.

설정 기본값 설명
args [] 린터에 전달할 인수. 참고: 공식적으로 지원되는 린터는 개별 열린 파일에서 실행됩니다. 해당 시나리오에서 구성이 적용되는지 확인하세요.
importStrategy useBundled useBundled로 설정하면 확장 프로그램은 함께 제공되는 도구 버전을 사용합니다. fromEnvironment로 설정하면 먼저 선택한 Python 환경에서 로드하려고 시도하고, 그렇지 않으면 함께 제공된 버전으로 대체됩니다.
path "" 린팅에 사용될 린터 바이너리의 경로. 참고: 이 옵션을 사용하면 포맷팅 속도가 느려질 수 있습니다.
interpreter [] Python 실행 파일의 경로로 설정하면 확장 프로그램은 린팅 서버와 해당 하위 프로세스를 시작하는 데 사용합니다.
showNotifications 확장 프로그램에서 알림이 표시되는 시기를 제어합니다. 지원되는 값은 off, always, onError, onWarning입니다.

린팅 비활성화

린터는 설치된 경우 기본적으로 활성화됩니다. 작업 영역별로 확장을 비활성화하여 비활성화할 수 있습니다.

린팅 실행

Python 파일을 열거나 저장할 때 린팅이 자동으로 실행됩니다.

오류 및 경고는 열린 파일의 문제 패널(⇧⌘M (Windows, Linux Ctrl+Shift+M))에 표시되며 코드 편집기에서도 강조 표시됩니다. 밑줄이 그어진 문제를 마우스로 가져가면 세부 정보가 표시됩니다.

Linting messages in the editor and the Problems panel

코드 액션

일부 린터는 보고된 문제를 해결하는 데 도움이 되는 코드 액션을 제공할 수 있습니다. 선호하는 린터 확장 프로그램의 기능 기여 섹션을 참조하여 제공하는 코드 액션을 확인하세요.

로깅

린터 로그는 명령 팔레트(⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 드롭다운 메뉴에서 <linter name>을 선택하면 출력 패널(⇧⌘U (Windows Ctrl+Shift+U, Linux Ctrl+K Ctrl+H))에서 사용할 수 있습니다.

명령 팔레트(⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 개발자: 로그 수준 설정 명령을 실행하여 린터 확장 프로그램의 로그 수준을 변경할 수 있습니다. 확장 프로그램 로그 그룹에서 확장을 선택한 다음 원하는 로그 수준을 선택합니다.

심각도

린터는 미리 정의된 심각도로 문제를 보고합니다. 이는 린터의 severity 설정을 사용하여 변경할 수 있습니다. 지원되는 값 및 심각도 수준에 대한 자세한 내용은 각 린터 확장 프로그램의 README를 참조하세요.

린팅 문제 해결

문제 원인 해결책
린터 확장 프로그램이 아무 문제도 보고하지 않습니다. 작업 영역에 Python이 선택되지 않았습니다. 사용 중인 린터의 로그를 확인하고 사용 중인 Python 환경의 경로를 확인하세요. Python이 선택되지 않은 경우 명령 팔레트에서 Python: 인터프리터 선택 명령을 실행하고 작업 영역에 대한 기존 인터프리터를 선택하세요.
"사용되지 않는 린팅 또는 포맷팅 설정" 알림이 표시됩니다. 이 알림이 표시되면 VS Code에 python.linting 또는 python.formatting과 같은 설정이 있음을 의미합니다. 이러한 설정은 린팅 및 포맷팅 지원이 도구 확장 프로그램으로 마이그레이션되었기 때문에 더 이상 Python 확장 프로그램에서 지원되지 않습니다. 명령 팔레트(⇧⌘P (Windows, Linux Ctrl+Shift+P))를 열고 기본 설정: 사용자 설정 열기(JSON) 명령을 실행하여 VS Code에서 이러한 설정이 정의된 위치를 찾으세요. 사용자 설정에 없는 경우 기본 설정: 작업 영역 설정 열기(JSON) 명령을 실행하세요. 그런 다음 사용되지 않는 설정을 삭제하세요.
참고: 원격 개발 확장 프로그램 팩의 확장 프로그램을 사용하는 경우 기본 설정: 원격 설정 열기(JSON) 명령을 실행하여 원격 설정을 확인할 수도 있습니다.
린터 확장 프로그램이 설치되었음에도 린팅이 작동하지 않습니다. 린팅은 지원되지 않는 Python 버전이 사용되거나 린터가 올바르게 구성되지 않은 경우 등 다양한 이유로 실패할 수 있습니다. 린터 확장 프로그램의 출력 채널을 확인하여 린터가 실패한 이유를 이해하세요(명령 팔레트에서 출력: 출력에 포커스 명령을 실행한 다음 린터 확장 프로그램 채널을 선택).

다음 단계

  • 포맷팅 - Python 코드 포맷팅 방법에 대해 알아보세요.
  • 디버깅 - 로컬 및 원격 Python 디버깅 방법을 알아봅니다.
  • 테스트 - 테스트 환경을 구성하고 테스트를 검색, 실행 및 디버그합니다.
  • 기본 편집 - 강력한 VS Code 편집기에 대해 알아보세요.
  • Python 확장 프로그램 템플릿 - 좋아하는 린터를 VS Code에 통합하는 확장 프로그램을 만드세요.
© . This site is unofficial and not affiliated with Microsoft.