괄호 안에 들어갈 내용은 앞뒤로 한 칸씩 띄워서 작성하는 거.
연산자 앞뒤로도 한 칸씩 띄워서 작성하는 거.
성격이 조금이라도 다른 로직의 경우 두 번 개행을 해서 작성하는 거.
...
등등, 로직 자체에는 영향을 주지 않지만, 누구나 사소하지만 신경 쓰는 고유한 스타일이 있듯이, 나도 꼭 지켜야만 속이 시원한 작성 습관들이 있다.
이걸 매번 신경 쓰면서 작업하다 보면, 혼자 코딩할 때도 번거롭고 가끔 놓치기도 한다.
하지만 더 큰 문제는 여러 사람이 함께 작업하는 회사 환경이다.
띄어쓰기나 개행 스타일이 제각각이다 보니 코드 가독성이 떨어지고, 통일감이 없어 퍽 신경쓰인다.( 일하는데 집중하면 사실 잘 안보일 때가 많지만, 한 번 신경쓰이면 계속 신경쓰이는 안읽음 메세지 표시 같달까 )
그래서 Black처럼 코드 스타일을 자동으로 맞춰주는 포맷팅 도구는 쾌적한 개발환경을 만들어주는 고마운 존재다.
공식docs에 있는 예시인데, 보기만 해도 마음이 편안해 지지 않는가? ( #in 부분은 진짜 보기만해도 스트레스 😰 )

사용 전 사전세팅

Black에 대한 configuration을 pyproject.toml 파일에 작성하게 되는데, 이를 위해선 파이썬 빌드시스템인 Poetry, Flit ,Hatch를 이용해야 한다. 나는 익숙한 Poetry를 썼다.
사용 방법
1. 설치
poetry add black
2. 설정

먼저 pyproject.toml 파일에 아래와 같이 기본값을 설정한다.
[tool.black]
line-length = 88 # poetry에서 권장한 한 줄당 글자수
include = '\.pyi?$' # .py와 .pyi 확장자가 포함된 파일만 적용
실행
poetry run black .
이것도 alias로 등록해놓고 쓰면 편하다.
alias black="poetry run black ."
'프로그래밍 > Python' 카테고리의 다른 글
[ FastAPI ] HTTPException에서 CustomException으로 예외 처리 개선 (2) | 2025.03.20 |
---|---|
[ FastAPI ] Response 구조 분석 및 공통 구조 커스텀하기 (0) | 2025.02.27 |
언더스코어 인 파이썬 ( 파이썬 객체지향적으로 사용하기 ) (1) | 2025.01.30 |
Pydantic.BaseSetting을 사용한 환경변수 관리 (0) | 2025.01.26 |
mypy에서 가상 환경 파일 무시하기: venv 디렉토리 제외 설정 방법 (0) | 2024.08.21 |