Python 개발을 할 때, 코드를 가독성 있게 정리하는 것은 매우 중요합니다. 이를 위해 Black와 Isort를 함께 사용하여 코드를 자동으로 정리하는 방법을 알아보겠습니다.
Black와 Isort를 함께 사용하기 위한 가이드가 있지만 Black을 설정하니 Isort가 설정되지 않고 Isort를 설정하니 Black이 설정되지 않는 문제가 있어 기록을 위해 포스팅합니다.
1. Black와 Isort 패키지 설치
터미널을 열고 아래와 같이 명령어를 입력하여 Black와 Isort 패키지를 설치합니다.
pip install black isort
2. settings.json 파일 수정
VS Code에서 Command + Shift + P를 입력한 뒤 검색 창에 "Settings.json"를 입력하고, "Open User Settings"을 선택합니다.
아래와 같이 settings.json
파일을 수정합니다.
{
"editor.formatOnSave": true,
"[python]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
},
"editor.formatOnType": true
},
"python.formatting.provider": "black",
"python.formatting.blackPath": "black",
"python.formatting.blackArgs": [
"--line-length=88"
],
"isort.args": [
"--profile",
"black"
],
}
- 위 설정에서
"editor.formatOnSave": true
는 파일을 저장할 때마다 코드를 자동으로 정리하도록 설정합니다. "[python]"
설정은 Python 파일에서만 적용되도록 하는 설정입니다."python.formatting.provider": "black"
는 Black을 사용하도록 설정하고,"python.formatting.blackPath": "black"
는 Black 실행 파일의 경로를 지정합니다."python.formatting.blackArgs"
는 Black 실행 시 추가적으로 넣을 옵션을 설정합니다."isort-args"
는 Isort 실행 시 추가적으로 넣을 옵션을 설정합니다.
이제 저장할 때마다 아래와 같이 Black 포맷팅 뿐만 아니라 Isort가 Import 순서를 정렬해줍니다.