위키득계정 ↗
기술

Autoflake

Autoflake기술
대상 언어
Python
분석 기반
Pyflakes
기본 제거 대상
사용하지 않는 표준 라이브러리 import 등
추가 선택 기능
사용하지 않는 변수 제거
Autoflake는 Python 코드에서 사용하지 않는 가져오기 구문과 변수 등을 정리하는 도구다. Pyflakes의 분석 결과를 활용하며 자동 제거의 영향을 줄이기 위해 기본 동작과 확장 옵션을 구분한다.

진단에서 코드 정리로

사용하지 않는 이름을 찾아 알려주는 것과 실제 구문을 삭제하는 것은 다른 단계다. Autoflake는 Pyflakes가 보고하는 정보를 활용해 불필요한 가져오기 구문과 변수 등을 정리한다. 기본적으로 쓸모없는 pass 문도 제거한다. 코드 전체의 서식을 맞추는 포매터와는 관심 대상이 다르다.

기본 제거 범위의 이유

모듈을 가져오는 행위 자체가 초기화나 등록 같은 부수 효과를 일으킬 수 있다. 이름을 직접 참조하지 않는다는 이유만으로 모든 import를 지우면 동작이 달라질 수 있다. 그래서 기본값은 사용하지 않는 표준 라이브러리 가져오기 구문에 한정되며 변수 제거도 기본적으로 꺼져 있다.

확장 옵션과 검토

추가 모듈을 지정하거나 모든 사용하지 않는 import를 제거하는 옵션을 선택할 수 있다. 파일을 바로 고치기 전에 차이를 확인하거나 검사 모드로 변경 필요 여부를 확인할 수도 있다. 설정 파일과 제외 지시를 활용해 적용 범위를 조절하고 실제 변경의 영향을 검토하는 과정이 필요하다.

관련 문서

Isort / Ruff / YAPF / Black 코드 포매터 / Semgrep