파이썬 언어
파이썬은 독립적인 인터프리터식, 객체지향적, 동적 타이핑 대화형 언어입니다.
파이썬 특징
Indent
코드를 여러 줄로 나눠서 쓰는 경우 다음 행과 구분되도록 공백 4칸의 Indent를 추가합니다.
Naming Convention
파이썬은 자바와 달리 각 단어를 밑줄(_)로 구분하여 표기하는 Snake Case
를 사용합니다.
List Comprehension
파이썬의 기존 리스트를 기반으로 새로운 리스르를 만들어내는 구문입니다.
result = [n * n for i in range(1, 100) if n % 2 == 0]
Generator
제너레이터(Generator)는 루프의 반복 동작을 제어할 수 있는 루틴의 형태입니다. 필요할 때 언제든 값을 생성할 수 있으며, yield
와 next(func)
을 사용합니다. yield
는 제너리터를 리턴하고, next(func)
은 다음 값을 생성하여 추출합니다.
# Example
def get_number():
n = 0
while True:
n += 1
yield n
gen = get_number()
for _ in range(0, 100):
print(next(gen))
range(start, end), enumerate()
range(), enumerate()는 제너레이터 방식을 활용한 대표적인 함수입니다. 제너레이터 방식을 활용하기 때문에 메모리 점유율이 훨씬 작습니다.
나눗셈 연산자 //
>>> 5 / 3
1.666666666667
>>> 5 // 3
1
print('A', 'B', f'{2**2} {2+2}', sep=',', end='')
pass
- 전체 골격을 잡지 않았을 경우 발생할 수 있는 오류를 넘어간다
class MyClass(object):
def method_a(self):
# dev
pass
my_class = MyClass()
locals()
- 로컬 심볼 테이블 딕셔너리를 가져오는 메소드
- 클래스 메소드 내부의 모든 로컬 변수를 출력해 주기 때문에 디버깅에 용이
import pprint
pprint.pprint(locals())
코딩 스타일
변수명과 주석
- 간단한 주석을 부여하는 편이 훨씬 더 가독성이 높임
- 의미있느 변수명
리스트 컴프리헨션
- 가독성을 떨어트리는 요인이 되기도 함
구글 파이썬 스타일 가이드
- 가변 객체를 사용하지 않아야 함
- 불변 객체를 사용할 경우 None을 명시적으로 할당
- Ture, False를 판별할 때는 암시적인 방법을 사용하여 간결하고 가독성을 높이자
'Program_Language > Python' 카테고리의 다른 글
[Python Algorithm Interview] 03. 리스트, 딕셔너리 (0) | 2022.06.09 |
---|---|
[Python Algorithm Interview] 02. 빅오, 자료형 (0) | 2022.06.08 |
공공데이터를 활용한 제주도 AED 설치위치 지도 표시 (0) | 2022.01.20 |
[Python 기초] 08_파일 (0) | 2021.08.17 |
[Python 기초] 07_딕셔너리 (0) | 2021.08.16 |