Devices

【 파이썬 】 작성 형식 - 스타일 가이드

작성자 임베디드코리아 작성일26-02-01 18:33 조회18회 댓글0건
■ 파이썬 코드를 더 읽기 쉽고 일관된 형식으로 작성하기 위한 코드의 가독성과 유지보수성을 높이기 위해 이러한 규칙을 따르는 것이 좋다.

<* 스타일 가이드의 중요성*>
◆ 코드는 단순히 컴퓨터가 실행할 수 있는 명령어들의 집합만이 아니다.
    ▷ 좋은 코드는 다른 사람들이 읽고 이해할 수 있는 문서와 같아야 한다.
    ▷ 스타일 가이드는 개발자가 더 깨끗하고 일관된 코드를 작성할 수 있다.
◆ 코드의 가독성은 코드의 품질을 결정하는 중요한 요소 중 하나이다.
◆ 파이썬 개발자로서 스타일 가이드를 숙지하고 적용하는 것은 매우 중요하다.


( 1 ) 들여쓰기
    ▶ 사용해야 하는 공백의 수는 4개이다.
    ▶ 탭과 공백을 혼합해서 사용하지 않는다.

# 좋은 예
if x == 4:
    print(x, y)

# 나쁜 예
if x == 4:
  print(x, y)  # 공백이 2개만 사용됨

    ▶ 줄 길이
        : 한 줄은 최대 79자까지만 작성한다.
          - 79자이상인 경우 파이썬에서는 괄호, 중괄호, 대괄호를 사용한 줄 분리가 가능하다.

# 좋은 예
def example_function(
        parameter_one, parameter_two, parameter_three,
        parameter_four):
    return parameter_one - parameter_two + parameter_three - parameter_four

# 나쁜 예
def example_function(parameter_one, parameter_two, parameter_three, parameter_four):
    return parameter_one - parameter_two + parameter_three - parameter_four  # 너무 긴 줄

( 2 ) 공백
    ▶ 함수와 클래스를 정의할 때와 함수 호출 시 인수 리스트 앞에는 공백을 넣지 않는다.

# 좋은 예
def func(x):
    return x + 2

func(1)
# 나쁜 예
def func (x):
    return x + 2

func (1)
변수와 연산자 사이에는 1개의 공백을 사용합니다.

# 좋은 예
y = x ** 2 + 5
z = (x + y) * (x - y)

# 나쁜 예
y=x**2+5
z=(x+y)*(x-y)


( 3 ) 주석
    ▶ 주석은 문장으로 작성하고, 문장을 시작하는 주석에는 대문자를 사용하며, 문장 끝에는 마침표를 찍는다.

# 좋은 예
# 활성 사용자 목록을 검사.
for user in active_users:
    # 사용자가 관리자인지 확인.
    if user.is_admin:
        # 관리자인 경우, 보고서를 생성.
        generate_report(user)

# 나쁜 예
# 사용자를 체크한다.
for user in active_users:
    # 관리자인지 확인
    if user.is_admin:
        # 보고서 생성
        generate_report(user)


( 3 )  이름 규칙
    ▶ 함수, 변수, 속성은 lowercase_underscore 형식을 사용한다.
    ▶ 보호되어야 하는 인스턴스 속성은 _leading_underscore를 클래스와 예외는 CapWords를 사용한다.

# 좋은 예
class ClassName:
    def method_name(self):
        self._internal_attribute = 10

# 나쁜 예
class classname:
    def MethodName(self):
        self.InternalAttribute = 10

( 4 ) 표현식과 문장
    ▶ 긍정적인 표현식의 부정보다는 if not을 사용하고, 불필요한 길이 비교는 피한다.

# 좋은 예
if not users:
    print("no users")

# 나쁜 예
if len(users) == 0:
    print("no users")

( 5 )  변수명과 함수명
    ▶ 변수명과 함수명은 소문자로 작성하며, 단어 사이에는 언더스코어를 사용한다.

# 좋은 예
def calculate_area(base, height):
    return base * height

user_name = "john_doe"

# 나쁜 예
def CalculateArea(Base, Height):
    return Base * Height

UserName = "john_doe"

( 6 )  클래스명
클래스명은 각 단어의 첫 글자를 대문자로 작성한다.
# 좋은 예
class AnimalKingdom:
    pass

# 나쁜 예
class animal_kingdom:
    pass

( 7 )  비교
긍정적인 표현식을 사용하고, 불필요한 비교는 피한다.

# 좋은 예
if not users:
    print("no users")

# 나쁜 예
if len(users) == 0:
    print("no users")