목록개발/python (9)
파파비의 블로그
[파이썬, Python] 제너레이터, Generator
C#, 유니티의 코루틴 같은 것이다. 호출할 때 마다 리턴되는 값이 달라지게 할 수 있는 기능이다. 제너레이터가 유용한 이유는, 예를 들어 숫자 1억개를 만들어내려면 그만큼 메모리 공간이 필요하지만, 제너레이터를 활용하면 생산해내는 조건만 메모리에 두고, 호출할 때마다 조건에 의해 새로운 값들이 나오게 할 수 있다. 제너레이터를 활용하는 방법은 기본 함수든 어디든, return 대신, yield를 사용하면 된다. 그러면 제너레이터가 return된다. 해당 제너레이터를 next() 함수에 인자로 넣으면 값이 나온다. 예시를 살펴보자 def get_natrual_number(): n = 0; while True: n += 1; yield n; g = get_natrual_number(); # g는 제너레이터..
개발/python
2021. 5. 17. 17:48