- Published on
파이썬 PEP 라이브러리 Black과 Flake8 사용법
- Authors
- Name
- devnmin
PEP 8 도구: Black과 Flake8 사용법
코드를 읽기 쉽고 일관되게 유지하려면 PEP 8 스타일 가이드를 따르는 것이 중요합니다. 이 글에서는 이를 도와주는 두 가지 필수 도구인 Black과 Flake8의 설치 및 사용법을 배워보겠습니다.
Black: 코드 자동 포매터
Black은 파이썬 코드를 자동으로 포맷팅해주는 도구입니다. "코드 스타일 논쟁에서 벗어나게 해준다"는 목표로 만들어졌으며, PEP 8을 준수합니다.
Black 설치하기
Black은 pip
를 사용해 간단히 설치할 수 있습니다:
pip install black
Black 사용하기
명령어로 실행
- Black을 실행할 파일이 있는 디렉토리로 이동합니다.
- 다음 명령어를 실행합니다:위 명령어는 현재 디렉토리의 모든 파이썬 파일을 포맷팅합니다.
black .
파일 한 개만 포맷팅하기
black your_script.py
포맷팅 전후 확인
포맷팅 전후의 차이를 확인하려면 --diff
옵션을 사용합니다:
black --diff your_script.py
Flake8: 코드 린터
Flake8은 PEP 8 스타일 준수 여부를 검사하는 코드 린터(Linter)입니다. 코드를 분석하고, 잠재적인 오류와 스타일 문제를 알려줍니다.
Flake8 설치하기
pip
로 설치합니다:
pip install flake8
Flake8 사용하기
기본 실행
파일이나 디렉토리를 지정하여 실행합니다:
flake8 your_script.py
출력 예시
your_script.py:3:1: E302 expected 2 blank lines, found 1
your_script.py:7:5: E225 missing whitespace around operator
- E302: 함수 정의 전에 빈 줄 2개가 필요합니다.
- E225: 연산자 주위에 공백이 필요합니다.
특정 파일 또는 디렉토리 제외하기
다음 옵션을 사용하여 검사에서 제외할 파일 또는 디렉토리를 지정할 수 있습니다:
flake8 --exclude venv,tests
Black과 Flake8 함께 사용하기
Black과 Flake8을 조합하면 코드 스타일 유지와 검사가 더욱 효율적입니다.
실행 순서
- Black으로 코드 포맷팅:
black .
- Flake8으로 스타일 검사:
flake8 .
예제: Black과 Flake8 적용하기
1. 정리되지 않은 코드
def add(a,b):return a+b
x=10;y=20;print(add(x,y))
2. Black으로 포맷팅 후
def add(a, b):
return a + b
x = 10
y = 20
print(add(x, y))
3. Flake8으로 스타일 검사
Flake8을 실행하여 남은 스타일 문제를 해결하면 완벽한 PEP 8 준수 코드가 완성됩니다.
추가 팁
편집기와 통합하기:
- Visual Studio Code 또는 PyCharm과 같은 편집기에 Black과 Flake8을 설정하면 저장할 때 자동으로 포맷팅되고 스타일 검사가 실행됩니다.
pre-commit
훅 사용:- Git에 코드를 커밋하기 전에 Black과 Flake8을 자동으로 실행하도록 설정할 수 있습니다.
pip install pre-commit pre-commit install
마무리
Black과 Flake8은 파이썬 코드 스타일을 유지하고 PEP 8을 준수하는 데 강력한 도구입니다. 이 두 가지를 활용해 코드 품질을 높이고 협업 효율성을 개선하세요!
더 깔끔한 코딩을 위한 첫걸음을 시작해 보세요! 🎉