함수의 McCabe 순환 복잡도를 계산하고, 지나치게 복잡한 코드를 표시하는 flake8 플러그인으로 실행되는 Python 도구입니다.
MartinThoma/flake8-simplify
isinstance 호출을 합치거나 if 블록을 삼항 연산자로 바꾸는 등, 더 간결하게 작성할 수 있는 Python 코드를 찾아내는 flake8 플러그인입니다.
- 스타
- 195
- 포크
- 22
- 열린 이슈
- 59
- 마지막 커밋
- 6일 전
어떤 프로젝트인가요?
flake8-simplify는 Python 린터인 flake8용 플러그인입니다. 중첩된 if문을 합치거나, try/except/pass 블록 대신 contextlib.suppress를 사용하거나, 직접 관리하는 반복문 카운터 대신 enumerate를 사용하는 등 더 짧거나 관용적인 형태로 바꿀 수 있는 코드 패턴을 알려주는 규칙을 추가합니다.
각 규칙은 SIM101이나 SIM108 같은 코드와 위치, 메시지를 보고하므로 다른 flake8 검사와 동일한 워크플로에서 사용할 수 있습니다. 패키지를 설치하고 flake8을 실행하면 규칙이 활성화되며, 표준 flake8 설정으로 개별 코드를 무시할 수 있습니다. 새 규칙은 정식 코드를 부여받기 전 시험 기간 동안 실험용 SIM9 접두사로 공개됩니다.
이 패키지는 Python 3.10부터 3.14까지 지원하며 pip로 설치할 수 있습니다. 이전에 포함되어 있던 일부 규칙은 별도 프로젝트인 flake8-scream으로 옮겨졌습니다.
핵심 기능
- 01하나로 합칠 수 있는 중첩된 if문을 찾아냅니다.
- 02장황한 코드를 삼항 연산자, any(), all(), dict.get()으로 바꾸도록 제안합니다.
- 03contextlib.suppress를 사용할 수 있는 try/except/pass 블록을 찾아냅니다.
- 04enumerate로 대체할 수 있는 수동 인덱스 카운터를 보고합니다.
- 05표준 flake8 플러그인으로 동작하며 규칙별 무시 설정을 지원합니다.
활용 사례
- 코드 리뷰나 리팩터링 과정에서 Python 코드베이스를 정리할 때.
- 팀의 flake8 설정으로 더 간결한 코딩 패턴을 적용할 때.
- 장황한 코드 패턴을 더 짧게 표현하는 방법을 확인하며 관용적인 Python을 익힐 때.
빠른 시작
- 1
pip로 플러그인을 설치합니다
pip install flake8-simplify - 2
프로젝트에서 flake8을 실행해 간소화 힌트를 확인합니다
flake8 .
사용 전 알아둘 점
- 실험적인 SIM9xx 규칙은 시험 기간이 끝난 후 변경되거나 이름이 바뀔 수 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- flake8-simplify은(는) 무엇인가요?
- isinstance 호출을 합치거나 if 블록을 삼항 연산자로 바꾸는 등, 더 간결하게 작성할 수 있는 Python 코드를 찾아내는 flake8 플러그인입니다. flake8-simplify는 Python 린터인 flake8용 플러그인입니다. 중첩된 if문을 합치거나, try/except/pass 블록 대신 contextlib.suppress를 사용하거나, 직접 관리하는 반복문 카운터 대신 enumerate를 사용하는 등 더 짧거나 관용적인 형태로 바꿀 수 있는 코드 패턴을 알려주는 규칙을 추가합니다.
- flake8-simplify은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- flake8-simplify은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- flake8-simplify은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. flake8-simplify의 마지막 커밋은 2026년 11월 1일입니다.
- flake8-simplify은(는) 어디에 사용할 수 있나요?
- 코드 리뷰나 리팩터링 과정에서 Python 코드베이스를 정리할 때. 팀의 flake8 설정으로 더 간결한 코딩 패턴을 적용할 때. 장황한 코드 패턴을 더 짧게 표현하는 방법을 확인하며 관용적인 Python을 익힐 때.
- flake8-simplify는 어떻게 설치하나요?
- pip로 플러그인을 설치합니다: pip install flake8-simplify 프로젝트에서 flake8을 실행해 간소화 힌트를 확인합니다: flake8 .
- flake8-simplify은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/MartinThoma/flake8-simplify
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
일관되고 간결한 Python 스타일을 적용하고 복잡한 코드 패턴을 찾아내는 엄격하고 주관이 뚜렷한 flake8 플러그인입니다.
PyFlakes, pycodestyle, McCabe를 하나의 명령으로 실행하고 서드파티 플러그인을 지원하는 Python 린터입니다.
선택한 스타일 가이드에 따라 Python import의 그룹과 순서를 검사하는 flake8 및 Pylama 플러그인입니다.
여러 프로젝트의 공통 설정을 검사하고 설정 파일을 자동으로 수정하는 CLI 도구이자 flake8 플러그인입니다.
Rust로 작성된 초고속 Python 린터이자 코드 포매터로, 900개 이상의 린트 규칙과 Black 호환 포매팅을 제공합니다.