Articles of iteración de

Usando ‘in’ para hacer coincidir un atributo de objetos de Python en una matriz

No recuerdo si estaba soñando o no, pero me parece recordar que había una función que permitía algo como, foo in iter_attr(array of python objects, attribute name) He revisado los documentos, pero este tipo de cosas no se incluyen en ningún encabezado obvio.

Iteración eficiente sobre la rebanada en Python

¿Qué tan eficientes son las iteraciones sobre las operaciones de división en Python? Y si una copia es inevitable con rebanadas, ¿hay alguna alternativa? Sé que una operación de división sobre una lista es O (k), donde k es el tamaño de la división. x[5 : 5+k] # O(k) copy operation Sin embargo, al recorrer […]

¿Cómo reasignar elementos en una lista en Python?

Quiero volver a asignar cada elemento en una lista en Python. In [20]: l = [1,2,3,4,5] In [21]: for i in l: ….: i = i + 1 ….: ….: Pero la lista no cambió en absoluto. In [22]: l Out[22]: [1, 2, 3, 4, 5] Quiero saber por qué sucedió esto. ¿Podría algún organismo […]

Forma eficiente de memoria de iterar sobre parte de un archivo grande

Normalmente evito leer archivos como este: with open(file) as f: list_of_lines = f.readlines() y usa este tipo de código en su lugar. f = open(file) for line in file: #do something A menos que solo tenga que iterar sobre unas pocas líneas en un archivo (y sé qué líneas son), entonces creo que es más […]

Cómo evitar el error StopIteration en python

Tengo una línea que extrae variables de varias listas y quiero que evite el error StopIteration que aparece para que pueda pasar a la siguiente línea. En el momento en que estoy usando la función de interrupción, esto evita el StopIteration, pero solo me da el primer elemento de la lista y deja una línea […]

¿Se puede “reiniciar” la iteración actual de un bucle de Python?

¿Hay alguna manera de implementar algo como esto: for row in rows: try: something except: restart iteration

python: iterar un rango específico en una lista

Digamos que tengo una lista: listOfStuff =([a,b], [c,d], [e,f], [f,g]) Lo que quiero hacer es recorrer los componentes del medio 2 de forma similar al siguiente código: for item in listOfStuff(range(2,3)) print item El resultado final debe ser: [c,d] [e,f] Este código actualmente no funciona, pero espero que pueda comprender lo que estoy tratando de […]

Convertir una lista de tuplas en un dictado en Python

Tengo una lista de tuplas como esta: [ (‘a’, 1), (‘a’, 2), (‘a’, 3), (‘b’, 1), (‘b’, 2), (‘c’, 1), ] Quiero recorrer esta clave por el primer elemento, por ejemplo, podría imprimir algo como esto: a 1 2 3 b 1 2 c 1 ¿Cómo podría hacer esto sin mantener un elemento para hacer […]

Haciendo iterables los atributos de un objeto.

Me están devolviendo una lista con objetos que tienen múltiples atributos como: results = q.fetch(5) for p in results: print “%s %s, %d inches tall” % (p.first_name, p.last_name, p.height ¿Es posible iterar sobre estos atributos para que pueda hacer algo como for x in p . Quiero verificar el valor de cada uno, pero no […]

Cola iterable de Python

Necesito saber cuándo se cierra una cola y no tendré más elementos para poder finalizar la iteración. Lo hice poniendo un centinela en la cola: from Queue import Queue class IterableQueue(Queue): _sentinel = object() def __iter__(self): return self def close(self): self.put(self._sentinel) def next(self): item = self.get() if item is self._sentinel: raise StopIteration else: return item […]