Web쪽에서 Django 프레임워크에서도 사용되고, 수많은 데이터 분석 관련 툴이 python으로 작성되어 있다.
https://www.python.org/dev/peps/pep-0008/
위 가이드에 나오는 PEP 8 스타일 가이드를 따르는 것이 좋다.
yield 키워드
제너레이터(Generators)
제너레이터(generators)는 이터레이터(iterators)와 혼동하기 쉬운 개념입니다.
iterator를 쉽게 만들 수 있는 문법으로, 코루틴의 한 형태라고 생각하면 됩니다.
하지만 제너레이터는 모든 값을 메모리에 담고 있지 않고 그때그때 값을 생성(generator)해서 반환하기 때문에 제너레이터를 사용할 때에는 한 번에 한 개의 값만 순환(iterate) 할 수 있습니다:
python은 dynamic typing, 동적 타이핑 또한 지원한다.
동적으로 속성을 바인딩하는 과정은 obj객체의 타입에 영향받지 않으며, 오로지 해당 객체가 attr에 해당하는 속성을 가졌는지만 검사한다. 위의 str()함수를 예로 들면, str()함수는 전달된 인수의 __str__()속성을 리턴한다.이러한 작동방식은 ‘오리처럼 울고 걸으면 그것은 오리이다.’라는 말에서 유래한 덕 타이핑(duck typing)이라고 한다. 덕 타이핑은 동적 타이핑의 한 종류이며, 객체가 가진 변수와 메서드가 해당 객체의 타입을 결정함을 의미한다.