본문 바로가기
Python

Python - Linting, 소스 분석, 코드 최적화 flake8

by 올엠 2024. 3. 14.
반응형

최선의 성능과 안정성이 있는 코드는 모든 경고를 제거한 코드라 할 수 있다.

여기에서는 flake8를 통해서 간편하게 코드에서 필요한 수정사항등이 무엇이 있는지 알아보도록 하겠다.

VSCode에서 많은 오류와 경고로 코드를 잡아주지만, VScode를 사용할 수 없거나, CI/CD 상황에서 사용할 만한 방법으로 flake8를 사용하면 어떨까 한다.

아래는 간단하게 VSCode 기본 상태에서 flake8를 이용해서 테스트를 한 결과이다.

VScode와 다르게 현재 3가지 수정 사항이 있는 것으로 확인된다.

flake8 이후 특정 파일이나 디렉토리를 통해서 코드를 분석할 수 있다.

PS C:\Users\Han\python\flake8> python3 -m flake8 .

.\test.py:4:1: F401 'os' imported but unused

.\test.py:4:1: E303 too many blank lines (3)

.\test.py:8:18: W292 no newline at end of file

.\test1.py:1:1: F401 'os' imported but unused

.\test1.py:2:1: W293 blank line contains whitespace

.\test1.py:5:12: W292 no newline at end of file

PS C:\Users\Han\python\flake8> python3 -m flake8 test1.py

test1.py:1:1: F401 'os' imported but unused

test1.py:2:1: W293 blank line contains whitespace

test1.py:5:12: W292 no newline at end of file

PS C:\Users\Han\python\flake8>

만약 예외 해야 하는 특정 파일이 있다면, .flake8 파일을 생성하고,

디렉토리(하위 포함됨), 파일 단위로 지정하여 해당 파일의 경우 예외가 가능하도록 지정할 수 있다.

[flake8]

exclude =

    __pycache__

    test1.py



 



 

 

 

반응형