Notas de estudio (4): Entrada de Python de dominio de base cero a una comprensión real en profundidad de combate de iteradores y generadores

Aprenda ahora: https://edu.csdn.net/course/play/26676/399743?utm_source=blogtoedu

1. Iterador

Definición de método especial de clase: hay guiones bajos antes y después

Determinar si un objeto es iterable: hasattr (xxx, '__ iter__')

Los dos métodos más importantes de iteradores: __iter__, (para determinar si es iterable), __next__ (para obtener elementos a su vez)

 El iterador puede optimizar bien la memoria , y se puede llamar tanto como se utilice, y no es necesario transferirlo a la memoria de una vez.

Utilice itertools de biblioteca de iteradores

 2. Generador

El valor de retorno de la función del generador usa rendimiento para devolver el resultado (el valor de retorno de la función normal usa retorno para retorno). La devolución del rendimiento se suspenderá en el lugar de la devolución, esperando la próxima llamada, y continuará la ejecución desde el lugar de la suspensión; la declaración después de la devolución no se ejecutará.

Los generadores son iterables y también objetos iteradores.

Otro método de análisis del generador es similar al de la comprensión de la lista, reemplazando el [] de la lista con ()

 

Supongo que te gusta

Origin blog.csdn.net/weixin_44566432/article/details/107811459
Recomendado
Clasificación