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

VS Code에서 Python 코드 서식 지정

서식 지정은 소스 코드를 사람이 더 쉽게 읽을 수 있도록 합니다. 줄 간격, 들여쓰기, 연산자 주위의 공백과 같은 특정 규칙 및 관례를 강제함으로써 코드가 시각적으로 더 잘 구성되고 이해하기 쉬워집니다. autopep8 페이지에서 예를 볼 수 있습니다. 코드가 실제로 작동하는 방식에는 영향을 미치지 않습니다.

린팅은 일반적인 구문, 스타일, 기능 오류 및 비표준 프로그래밍 관행을 분석하여 오류를 방지하는 데 도움이 됩니다. 서식 지정과 린팅 사이에는 약간의 중복이 있지만 두 기능은 상호 보완적입니다.

서식 지정 도구 선택

선택한 서식 지정 도구에 대한 확장 프로그램을 VS Code Marketplace에서 검색하십시오.

Microsoft에서 다음 서식 지정 확장 프로그램을 게시합니다.

서식 지정 도구 확장 프로그램
autopep8 https://marketplace.visualstudio.com/items?itemName=ms-python.autopep8
Black formatter https://marketplace.visualstudio.com/items?itemName=ms-python.black-formatter

커뮤니티에서 제공하는 서식 지정 도구 확장 프로그램

서식 지정 도구 확장 프로그램
Ruff https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff
yapf https://marketplace.visualstudio.com/items?itemName=eeyore.yapf

또한, 아래는 import 정렬을 지원하는 서식 지정 도구 확장 프로그램입니다.

서식 지정 도구 확장 프로그램
Ruff https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff
isort https://marketplace.visualstudio.com/items?itemName=ms-python.isort

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

기본 서식 지정 도구 설정

서식 지정 도구 확장 프로그램을 설치한 후 다음 단계에 따라 VS Code에서 Python 파일의 기본 서식 지정 도구로 선택할 수 있습니다.

  1. VS Code에서 Python 파일을 엽니다.
  2. 편집기를 마우스 오른쪽 버튼으로 클릭하여 컨텍스트 메뉴를 표시합니다.
  3. 문서 서식 지정을 선택합니다.
  4. 드롭다운 메뉴에서 기본 서식 지정 도구 구성을 선택합니다.
  5. 목록에서 원하는 서식 지정 도구 확장 프로그램을 선택합니다.

또는 사용자 settings.json 파일의 [python] 범위 아래에 "editor.defaultFormatter"를 설정하여 모든 Python 파일에 대한 기본 서식 지정 도구로 설정할 수 있습니다. 환경 설정: 사용자 설정 열기(JSON) 명령으로 settings.json을 열 수 있습니다.

예를 들어, Black Formatter를 기본 서식 지정 도구로 설정하려면 사용자 settings.json 파일에 다음 설정을 추가합니다.

  "[python]": {
    "editor.defaultFormatter": "ms-python.black-formatter"
  }

서식 지정 도구 확장 프로그램을 import 정렬 도구로 설정하려면 사용자 settings.json 파일 또는 작업 영역 settings.json 파일의 [python] 범위 아래에 있는 "editor.codeActionsOnSave"에서 기본 설정을 지정할 수 있습니다. 환경 설정: 사용자 설정 열기(JSON)환경 설정: 작업 영역 설정 열기(JSON) 명령을 사용하여 해당 settings.json 파일을 열 수 있습니다. 이렇게 하면 모든 Python 파일에 대해 저장 시 import 정렬이 활성화됩니다.

예를 들어, Ruff를 원하는 import 정렬 도구로 설정하려면 사용자 settings.json 또는 작업 영역 settings.json 파일에 다음 설정을 추가할 수 있습니다.

{
  "[python]": {
    "editor.codeActionsOnSave": {
      "source.organizeImports.ruff": "explicit"
    }
  }
}

코드 서식 지정

편집기를 마우스 오른쪽 버튼으로 클릭하고 문서 서식 지정을 선택하거나 ⇧⌥F (Windows Shift+Alt+F, Linux Ctrl+Shift+I) 키보드 단축키를 사용하여 코드를 서식 지정할 수 있습니다.

코드의 저장 시 서식 지정을 활성화하려면 사용자 settings.json 파일에 다음 설정을 추가할 수도 있습니다.

  "[python]": {
    "editor.formatOnSave": true
  }

일반 서식 지정 설정

대부분의 서식 지정 도구 확장 프로그램에서 지원하는 다음 설정에 대한 자세한 내용은 각 서식 지정 도구 확장 프로그램의 README를 참조하십시오.

설정 접미사
기본값 설명
args [] 서식 지정 도구에 전달할 인수입니다. 각 인수는 배열에서 별도의 문자열로 전달해야 합니다.
예를 들어,
black-formatter.args: ["--line-length", "100"]
importStrategy useBundled useBundled로 설정하면 확장 프로그램이 함께 제공되는 도구 버전을 사용합니다. fromEnvironment로 설정하면 먼저 선택한 Python 환경에서 로드하려고 시도하고, 그렇지 않으면 번들 버전을 사용합니다.
path "" 서식 지정을 위해 사용될 서식 지정기 이진 파일의 경로입니다. **참고:** 이 옵션을 사용하면 서식 지정 속도가 느려질 수 있습니다.
interpreter [] Python 실행 파일의 경로로 설정하면 확장 프로그램이 해당 경로를 사용하여 서식 지정기 서버와 해당 하위 프로세스를 시작합니다.
showNotifications 확장 프로그램에 의해 알림이 표시될 시기를 제어합니다. 지원되는 값은 off, always, onError, onWarning입니다.

서식 지정 문제 해결

서식 지정에 실패하면 다음 가능한 원인을 확인하십시오.

문제 해결책
Python 파일에 여러 서식 지정 도구가 있습니다. 위의 섹션의 지침에 따라 기본 서식 지정 도구를 설정하십시오.
"문서 서식 지정" 옵션이 없습니다. 컨텍스트 메뉴에 이 옵션이 표시되지 않으면 VS Code에 서식 지정 도구 확장 프로그램이 설치되지 않았거나 사용 설정되지 않은 것입니다. Python 서식 지정 도구 확장 프로그램을 설치하는 방법은 서식 지정 도구 선택 섹션을 참조하십시오.
서식 지정 도구에 대한 사용자 지정 인수가 올바르지 않습니다. 적절한 <formatter>.path 설정에 인수가 포함되어 있지 않고 <formatter>.args에 개별 최상위 인수 요소 목록이 포함되어 있는지 확인하십시오.
"사용되지 않는 린팅 또는 서식 지정 설정이 있습니다"라는 알림이 표시됩니다. 이 알림이 표시되면 VS Code에 python.linting 또는 python.formatting과 같은 설정이 있음을 의미합니다. 린팅 및 서식 지정 지원이 도구 확장 프로그램으로 마이그레이션되었기 때문에 이러한 설정은 Python 확장 프로그램에서 더 이상 지원되지 않습니다. 린팅 및 서식 지정 지원이 도구 확장 프로그램으로 마이그레이션되었습니다.
Black Formatter를 사용할 때 **선택 영역 서식 지정** 명령이 실패합니다. black은 코드 섹션의 서식 지정을 지원하지 않습니다. 이 제한 사항을 해결하려면 붙여넣기 시 서식 지정을 비활성화하고 다음 설정을 사용하여 전체 파일을 서식 지정하도록 formatOnSave를 설정할 수 있습니다: "[python]": {"editor.formatOnPaste": false, "editor.formatOnSaveMode": "file"}.
서식 지정 도구 확장 프로그램이 설치되어 있음에도 서식 지정이 작동하지 않습니다. 코드의 구문 문제, 지원되지 않는 Python 버전 사용, 서식 지정 도구 구성 오류 등 다양한 이유로 서식 지정이 실패할 수 있습니다. 서식 지정 도구 확장 프로그램의 출력 채널을 확인하여 서식 지정 도구가 실패한 이유를 이해하십시오(명령 팔레트에서 **출력: 출력에 집중** 명령을 실행한 다음 서식 지정 도구 확장 프로그램 채널 선택).

참고: 위에 나열된 원하는 서식 지정 도구를 찾을 수 없는 경우, 확장 프로그램을 통해 지원을 추가할 수 있습니다. Python Extension Template을 사용하면 VS Code에 원하는 Python 도구를 쉽게 통합할 수 있습니다.

다음 단계

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