vscode에서 flake8 사용하기

Juppi·2023년 5월 21일
0

개발 + α

목록 보기
1/1

파이썬 정적 분석과 PEP 8

정적 코드 분석: 프로그램을 실행하지 않고 문법 오류나 코딩 규약 위반 등을 분석하는 행위
➡️ 오류 사전 제거 및 가독성 향상

사람마다 코딩하는 스타일이 다르기 때문에 pep-8이라는 파이썬 표준 코딩 스타일 가이드가 존재한다. pep-8 가이드라인에 맞춰 코드를 작성하고 정적 분석을 수행하면 표준화된 코드로 원활한 협업이 가능하다.

개인적으로 pep-8 가이드라인을 준수하면서 느낀 좋은점은 일단 코드가 깔끔해지고, 협업 시에 코드 스타일과 관련한 충돌이 적게 발생한다는 것이다.

pep-8 가이드라인에 대한 공식 문서는 해당 링크를 확인할 것 ‼

Flask8

pep-8의 체크, pyflakes의 체크 및 순환 복잡도를 확인할 수 있는 Python lint 중에 하나이다.

현재는 pep8 가이드라인 준수 체크에만 활용하고 있지만, 추후에 코드 복잡도 확인에도 적용해보고 글을 쓸 예정이다.

아무래도 pep-8 공식 문서를 모두 읽고 지키기에는 좀 무리가 있었는데, 해당 lint를 사용하면 어떤 코드가 가이드라인을 준수하지않았는지 vscode 하단 problem 탭에서 다 나타나기때문에 좀 더 빠르게 손에 익을 수 있는 것 같다.

Install

pip 로 flask8을 설치하기

pip install flake8

cmd + shift + p 로 command palette를 열어서 아래 작업 진행하기

  1. command palette 에서 python: select lint를 입력하여 flake8 선택
  1. command palette 에서 python: run linting을 통하여 lint 활성화

기본적인 flask8 동작은 위 과정을 실행하면 된다.

vscode 하단 PROBLEM 탭에 lint에서 잡은 문제와 에러 코드가 뜬다.

클릭하면 해당 라인으로 이동해서 수정이 가능하다

추가 설정

lint를 사용하다보면 무시하고 싶은 에러가 존재할 수 있다.

나는 too many lineimport 관련 에러를 무시해서 사용하고 있는데,

command palatte 를 열어서 setting.json 을 작성해 설정 파일을 연다

.vscode/setting.json 이 열리면 아래처럼 코드를 작성해주면 된다.

// lint
    "python.linting.flake8Args": [ 
        "--max-line-length=200", 
        "--ignore=E501",        // too many line
        "--ignore=E402",        // module level import not at top of file
				"--ignore={무시할 에러코드}" ],      
    "editor.rulers": [
        200
    ],

reference

https://4python.tistory.com/entry/TIL-vscode-PEP8-관련-설정-잡기

https://flake8.pycqa.org/en/latest/

profile
잠자면서 돈버는 그날까지

1개의 댓글

comment-user-thumbnail
2024년 1월 29일

오타있어요 flask8 -> flake8

답글 달기