오경석의 개발노트

Python_스타일 가이드 본문

프로그래밍 언어/Python

Python_스타일 가이드

OHSAYU 2022. 9. 2. 10:55

    프로그래밍 언어를 사용하면서 코드를 작성할 때 띄어쓰기, 들여 쓰기, 변수명 등등 스타일이 있다. 남들과 다르게 작성한다고 해서 무조건 컴파일 오류가 발생하지는 않지만 예약어 사용이라던가 띄어쓰기, 들여 쓰기에 따라 오류가 발생하기도 하고 중구난방으로 작성하게 되면 다른 사람들이 봤을 때 알아보기가 힘들다. 심지어 나중에 본인이 봐도 헷갈릴 수 있다. 파이썬 스타일 가이드는 이러한 문제의 해결책을 위해 스타일 가이드를 만들었다. 한번 살펴보자.

 

코드 레이아웃

들여 쓰기 : 들여 쓰기 수준당 4개의 공백을 사용. 

최대 라인 길이 : 모든 행을 최대 79자로 제한.

빈 줄 : 두 개의 빈 줄로 최상위 함수 및 클래스 정의를 묶음.

def hello():
    print("hello") # 4칸 들여쓰기
    
    
print(hello) # 함수 사이 2칸 빈 줄

 

식 & 명령문의 공백

  • 괄호, 대괄호 또는 중괄호 바로 내부에서는 공백을 사용하지 않는다.
  • 쉼표, 세미콜론, 콜론 바로 앞에는 공백을 사용하지 않는다.
  • 함수 이름과 괄호 사이에 공백을 사용하지 않는다.
  • 지정 연산자 앞뒤로 공백을 한 칸씩 사용한다.
  • 우선순위가 다른 연산자를 사용하는 경우 우선순위가 가장 낮은 연산자 주위에 공백을 추가하는 것이 좋다.
# Correct
a = 1

# Wrong
a=1

# Correct
print("hello, world")

# Wrong
print ( "hello, world" )

 

주석

  • 블록 주석 : 일반적으로 해당 코드와 동일한 수준으로 들여쓰기한다.
  • 인라인 주석 : 주석 앞에 두 개 이상의 공백으로 구분하도록 한다.
pi = 3.14  # 원주율(코드와 동일한 줄에 주석 사용할 때는 2칸 띄움


def hello():
    print("hello")
    # 함수 주석 사용시 해당 코드와 동일 수준으로 들여쓰기

 

명명 규칙

    알파벳 소문자 l(엘), 대문자 I(아이), 대문자 O(오)를 단일 문자 변수 이름으로 사용하지 않는다. 일부 글꼴에서 숫자 1, 0과 구별할 수 없기 때문이다. 소문자 l을 사용하고 싶을 때에는 대신 대문자 L을 사용한다.

    변수, 함수 이름은 소문자여야 하며, 가독성을 높이기 위해 단어를 밑줄로 구분한다. 상수 이름은 단어를 구분하는 밑줄과 함께 모두 대문자로 작성한다.

# Correct
fastfood_cost

# Wrong
FastfoodCost
fastfoodCost

 

연산자

우선순위가 다른 연산자를 다룰 경우 우선순위가 가장 낮은 연산자의 양쪽에 스페이스를 넣는다.

x = y*2 - 1
test = y*y - z*z
c = (a+b) * (a-b)

 

 

출처 : https://peps.python.org/pep-0008/#class-names

 

PEP 8 – Style Guide for Python Code | peps.python.org

PEP 8 – Style Guide for Python Code Author: Guido van Rossum , Barry Warsaw , Nick Coghlan Status: Active Type: Process Created: 05-Jul-2001 Post-History: 05-Jul-2001, 01-Aug-2013 Table of Contents This document gives coding conventions for the Python co

peps.python.org

출처 : https://heinafantasy.com/136

 

파이썬 스타일 가이드 PEP8 살펴보기

브랜드 UX를 향상시기키 위해서는 스타일 가이드를 만드는 것이 좋다. (선택이 아닌 필수라고 봐도 무방) 프로그래밍을 할 때에도 좋은 코드와 나쁜 코드가 있다. 코드를 잘 짜면 구조를 한 눈에

heinafantasy.com

 

'프로그래밍 언어 > Python' 카테고리의 다른 글

Python_csv파일 불러오기  (0) 2022.09.05
Python_변수의 개념과 생성, 작명법  (0) 2022.09.05
Python_클래스 정의  (0) 2022.08.31
Python_라이브러리 정의  (0) 2022.08.29
Python_패키지 정의  (0) 2022.08.29
Comments