TIL - 04/26 - Python Coding Conventions

Sung Jun Jin·2020년 4월 26일
0

TIL

목록 보기
15/25
post-custom-banner

주석이 필요없는 가독성 높은 코드를 짜라

파이썬 공식 가이드는 PEP-8과 Google의 파이썬 코딩 스타일과 위코드의 스타일을 추가한 코딩 스타일 가이드를 공부했다. 위코드를 다니면서 원래 가지고 있던 코딩스타일이 180도 변해가고 있다.

Naming

변수나 클래스는 이름이 명사로 이루어지고 함수는 동사로 이루어진다.

변수, 함수, 클래스, 모듈, 패키지등의 이름은 최대한 한 눈에 목적을 이해할 수 있는 이름을 선택해야 한다. 파이썬은 일반적으로 camel case를 사용하지 않고 _ (underscore)를 사용해 단어를 구분한다.

ex)

total_cost

def get_users()

class Users

Naming을 할때 너무 긴 이름, 단어 철자를 짧게 만든 이름은 피하는게 좋다

user_who_is_created_now = '안좋은 예'

trd = Trader()
nums = [1,2,3,4,5]

Space

빈 줄 (space)는 로직 단위로 하나만 삽입한다.

def create_user:
    new_user       = User()
    new_user.name  = user['name']
    new_user.email = user['email']
    
    save_user(new_user)

코드가 한줄에 너무 길게 있을때

한 줄에는 79자를 안넘어가도록 코드를 작성한다. 넘어가면 다음줄로 나누어서 작성하는것이 일반적인 가이드이다.

from module1 import ClassA, ClassB, ClassC, ClassD, ClassE # Bad

from module1 import (
    ClassA,
    ClassB,
    ClassC,
    ClassD,
    ClassE,
) # Good

def get_something(param1,param2,param3,param4,param5) # Bad

def get_something(
    param1,
    param2,
    param3,
    param4,
    param5
) # Good    

Code Allign

코드 줄을 잘 맞춰 깔끔하게 정렬해준다.

import django
import requests

from something import awesome
from math      import random

new_user         = User()
new_user.name    = user["name"]
new_user.age     = user["age"]
new_user.feature = "?" 

user = { 
		"id"         : 1, 
		"name"       : "아이유", 
		"age"        : 27, 
		"gender"     : "Female", 
		"occupation" : "Artist"
}
profile
주니어 개발쟈🤦‍♂️
post-custom-banner

0개의 댓글