3층 1구역 - 개발의 장/Python 프로그래밍 핵심 개념

18. 파이썬 - 코드를 가독성 있게 작성하는 법

상이태상 2024. 6. 17. 07:54

1. 서론

지난번에 style에 대해 언급한 적이 있었다.

2024.06.16 - [3층 1구역 - 개발의 장/Python 프로그래밍 핵심 개념] - 16. 파이썬 - Style

 

16. 파이썬 - Style

1. 서론버거를 주문할 시에 혜택 차원에서 음료수 및 감자튀김을 받을 수 있다.VS 버거를 주문하면 음료수와 감자튀김은 서비스다. 둘이 다른 문장이지만 결론은 '햄버거를 주문하면 음료수와

sukw9512.tistory.com

 

위 게시물에서 원의 넓이와 둘레를 구하는 프로그램을 가독성 좋게 작성해봤다.

그래서 이번에는 어떻게 하면 코드를 가독성 좋게 작성할 수 있을까? 를 알아보자.

 

2. 본론

 

2-1. 이름 규칙

모든 변수와 함수 이름은 소문자로 쓰고, 여러 단어일 경우, _(언더바)로 나눠주세요.

# bad
someVariableName = 1
SomeVariableName = 1

def someFunctionName():
    print("Hello")

# good
some_variable_name = 1

def some_function_name():
    print("Hello")

 

모든 상수 이름은 대문자로 쓰고, 여러 단어일 경우, _(언더바)로 나눠주세요.

 

# bad
someConstant = 3.14
SomeConstant = 3.14
some_constant = 3.14

# good
SOME_CONSTANT = 3.14

 

의미 있는 이름(변수)

 

# bad (의미 없는 이름)
a = 2
b = 3.14
print(b * a * a)


# good (의미 있는 이름)
radius = 2
PI = 3.14
print(PI * radius * radius)

 

의미 있는 이름(함수)

 

# bad (의미 없는 이름)
def do_something():
    print("Hello, world!")

# good (의미 있는 이름)
def say_hello():
    print("Hello, world!")

 

 

2-2. 화이트 스페이스

들여쓰기
들여쓰기는 무조건 스페이스 4개를 사용하세요.(Tab키를 누르면 좋아요.)

 

# bad (스페이스 2개)
def do_something():
  print("Hello, world!")

# bad (스페이스 8개)
i = 0
while i < 10:
        print(i)


# good (스페이스 4개)
def say_hello():
    print("Hello, world!")

 

2-3. 함수 정의

함수 정의 위아래로 빈 줄이 두 개씩 있어야 합니다. 하지만 파일의 첫 줄이 함수 정의인 경우 해당 함수 위에는 빈 줄이 없어도 됩니다.

 

# bad
def a():
    print('a')
def b():
    print('b')

def c():
    print('c')


# good
def a():
    print('a')


def b():
    print('b')


def c():
    print('c')

 

 

2-4. 괄호

괄호 바로 안에는 띄어쓰기를 하지 마세요.

 

# bad
spam( ham[ 1 ], { eggs: 2 } )

# good
spam(ham[1], {eggs: 2})

 

함수를 정의하거나 호출할 때, 함수 이름과 괄호 사이에 띄어쓰기를 하지 마세요.

 

# bad
def spam (x):
    print (x + 2)


spam (1)

# good
def spam(x):
    print(x + 2)


spam(1)

 

2-5. 쉼표

쉼표 앞에는 띄어쓰기를 하지 마세요

 

# bad
print(x , y)

# good
print(x, y)

 

2-6. 지정 연산자

지정 연산자 앞뒤로 띄어쓰기를 하나씩 넣어 주세요.

 

# bad
x=1
x    = 1

# good
x = 1

 

2-7. 연산자

기본적으로 연산자 앞뒤로 띄어쓰기를 하나씩 합니다.

 

# bad
i=i+1
submitted +=1

# good
i = i + 1
submitted += 1

 

하지만 연산의 '우선 순위'를 강조하기 위해서는, 연산자 앞뒤로 띄어쓰기를 붙이는 것을 권장합니다.

 

# bad
x = x * 2 - 1
hypot2 = x * x + y * y
c = (a + b) * (a - b)

# good
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)

 

2-8. 코멘트

일반 코드와 같은 줄에 코멘트를 쓸 경우, 코멘트 앞에 띄어쓰기 최소 두 개를 입력해 주세요.

 

# bad
x = x + 1# 코멘트

# good
x = x + 1  # 코멘트

 

 

3. 결론

좀 더 다양한 내용을 알고 싶다면

https://peps.python.org/pep-0008/#code-lay-out

 

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

This document gives coding conventions for the Python code comprising the standard library in the main Python distribution. Please see the companion informational PEP describing style guidelines for the C code in the C implementation of Python.

peps.python.org

 

이 곳을 참조!