Python의 대표 Code Formatter인 black에 대하여
사용하면 좋은 점과 간단한 사용법 예시를 정리해보도록 하겠습니다.
black 사용 장점/이유
개발자 간에 협업을 할 때, 코드 스타일이 다를 수 있는데
다른 스타일의 코드가 뒤죽박죽 섞이게 되면
가독성이 떨어져 코드 리뷰, 디버깅 등의 과정에서 어려움을 겪을 수 있습니다.
따라서, 코드 스타일을 통일하기 위하여 이를 중재해주는 코드 포맷터가 큰 프로젝트일수록
더 중요한 역할을 하게 되고, Python에서는 black이 대표 포맷터 종류로 자리잡은 것입니다.
예시로, black에서 중재해주는 코드 스타일 양식의 예시는 다음과 같습니다.
### 포맷팅 전 ###
def some_function(arg1,arg2):return arg1+arg2
result=some_function(5,10)
if result==15:
print('문자열 따옴표 확인')
### 포맷팅 후 ###
def some_function(arg1, arg2):
return arg1 + arg2
result = some_function(5, 10)
if result == 15:
print("문자열 따옴표 확인")
함수 인자 사이의 공백, 들여쓰기 4칸 통일, 함수 뒤 2줄 띄어쓰기,
문자열 쌍따옴표로 통일 등 여러 사항이 적용되었으며,
이 덕분에 가독성이 향상된 것을 확인해볼 수 있습니다.
black 설치 및 사용 방법
black을 사용하기 위하여 먼저 모듈 설치를 진행해야 합니다.
간단하게 pip install black 명령어로 설치가 가능합니다.
black을 특정 py 파일에만 적용하고 싶다면 다음과 같이 명령어를 입력하시면 됩니다.
black my_script.py
만일, black을 특정 디렉토리 전체 혹은 프로젝트 전체에 적용하고 싶다면
다음과 같은 명령어를 적용해주시면 됩니다.
# 특정 디렉토리 전체 적용
black my_project_directory/
# 프로젝트 전체 적용
black .
대표적으로 적용 가능한 옵션들을 알아보면 다음과 같습니다.
black을 실제로 적용하지 않고, 변경 예정인 부분만 보고 싶다면 --diff 옵션을
사용해주시면 됩니다.
black --diff my_script.py
CI/CD 과정에서 포맷팅 적용 여부를 검사할 때 유용한 명령어로,
변경이 필요한 부분이 있는지 여부를 체크하려면 --check 옵션을 사용해주시면 됩니다.
black --check my_project_directory/
이 외에도 black 내부의 문법을 일부 수정하여 적용하는 것도 가능한데요.
실제 적용되는 규칙과 수정 적용 방법은 위에 첨부한 공식 문서를 참고하시면 됩니다.
'Python > Utils' 카테고리의 다른 글
파이썬 API 호출 동시에 여러 번 수행 방법(aiohttp 비동기 호출 응용) (0) | 2024.03.19 |
---|---|
파이썬 구글 이메일(Gmail) 보내기 SMTP 예제(파일 및 이미지 첨부 포함) (3) | 2024.03.06 |
파이썬 class __init__에서 async로 변수 초기화 하는 방법 (0) | 2024.02.20 |