다음 글에서는 파이썬에서 제너레이터가 무엇인지 알아보겠습니다. python 제너레이터가 무엇인지, 제너레이터가 python프로그래밍에서 수행할 수 있는 역할
을 알아보세요.파이썬 생성기란 무엇인가요?
목록 생성을 통해 목록을 직접 생성할 수 있습니다. 그러나 메모리 제약으로 인해 목록 용량은 확실히 제한됩니다. 더욱이, 100만 개의 요소를 포함하는 목록을 만드는 것은 많은 저장 공간을 차지할 뿐만 아니라 처음 몇 개의 요소에만 액세스해야 한다면 대부분의 후속 요소가 차지하는 공간이 낭비됩니다.그렇다면 특정 알고리즘에 따라 목록 요소를 계산할 수 있다면 루프 중에 후속 요소를 지속적으로 계산할 수 있습니까? 이렇게 하면 전체 목록을 만들 필요가 없어 많은 공간을 절약할 수 있습니다. Python에서는 이러한 반복과 계산을 동시에 수행하는 메커니즘을 생성기(generator)라고 합니다.
생성기를 생성하는 방법에는 여러 가지가 있습니다. 첫 번째 방법
은 매우 간단합니다. 목록 생성의 []를 ()로 변경하면 생성기가 생성됩니다.>>> L = [x * x for x in range(10)] >>> L [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] >>> g = (x * x for x in range(10)) >>> g <generator object <genexpr> at 0x1022ef630>
def fib(max): n, a, b = 0, 0, 1 while n < max: print(b) a, b = b, a + b n = n + 1 return 'done'
a, b = b, a + b
t = (b, a + b) # t是一个tuplea = t[0]b = t[1]
>>> fib(6)112358'done'
def fib(max): n, a, b = 0, 0, 1 while n < max: yield b a, b = b, a + b n = n + 1 return 'done'
>>> f = fib(6) >>> f<generator object fib at 0x104feaaa0>
위 내용은 이 글에 설명된 내용이 전부입니다. 이 글은 주로 python
의 제너레이터에 관련된 지식을 소개하는 내용이므로 위 내용을 이해하는데 참고하시기 바랍니다. 이 글에서 제가 설명한 내용이 여러분에게 도움이 되고 파이썬을 더 쉽게 배울 수 있기를 바랍니다.더 많은 관련 지식을 알고 싶으시면 PHP 중국어 홈페이지의 Python tutorial
칼럼을 방문해 주세요. 🎜위 내용은 파이썬에서 생성기는 무엇입니까? 발전기는 무엇을 위해 사용됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!