compreensão dos geradores de Python
investigando o mundo dos geradores de Python pode ser desconcertante, especialmente se você estiver acostumado ao ecossistema Java. Ao contrário do modelo de encadeamento de Java, os geradores em Python servem a um propósito distinto. Quando chamado, o gerador gera uma sequência de valores um de cada vez. Em vez de calcular e armazenar toda a sequência na memória, os geradores produzem valores sob demanda. rendimento n Rendimento n 1
chamando my_gen (6) cria um objeto que produz os valores 6 e 7 quando iterado através: g = my_gen (6) Próximo (G) # Saída: 6 Próximo (G) # Output: 7
para loops Ligue automaticamente em seguida para você, facilitando o item da sequência:
para n em my_gen (6): impressão (n) # Saída: # 6 # 7
def my_gen(n): yield n yield n 1benefícios dos geradores
g = my_gen(6) next(g) # Output: 6 next(g) # Output: 7
for n in my_gen(6): print(n) # Output: # 6 # 7fornecem um conceito A Concise maneira de descrever certos conceitos, eliminando a necessidade de funções detalhadas que retornam LISTS.
eficiência da memória:
Ao gerar valores sob demanda, os geradores evitam alocar memória desnecessária para armazenar grandes seqüências. Isso é especialmente útil ao lidar com fluxos de dados que, de outra forma, sobrecarregariam a memória. Por exemplo, os números de Fibonacci podem ser gerados indefinidamente:
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3