Looking for ipython Answers? Try Ask4KnowledgeBase
Looking for ipython Keywords? Try Ask4Keywords

ipythonAtajos, consejos y trucos de IPython


Observaciones

IPython (y el cuaderno Jupyter) definen un significado especial para el guión bajo. Siempre contiene la salida más reciente. Esto es útil cuando se procesan datos en varios pasos. Esto se demuestra en el ejemplo anterior. Para limpiar el texto, se ejecuta a través de algunas expresiones regulares y luego se normaliza antes de dividirse. Fuera de IPython, cada resultado debería almacenarse en una nueva variable o los pasos anidados. En IPython, a menudo estamos explorando y haciendo un seguimiento de las variables o reproduciendo una larga serie de llamadas anidadas es tedioso. Así que aquí es donde aparece el guión bajo.

Hay una gotcha. Si asigna un valor al guión bajo en el ámbito global, se produce un comportamiento inesperado. Por ejemplo:

address = ('http://example.com', 80)
(_, port) = address

Aquí solo me interesa el segundo elemento de la tupla, el número de puerto. Así que sigo la convención y asigno el primer elemento al guión bajo para indicar que es un tiro. Sin embargo, ahora el valor del guión bajo es http://example.com . Y si tuviera que ejecutar más código:

1+4

El valor esperado del guión bajo sería 5. Sin embargo, no lo es. El valor sigue siendo el dominio de la tupla. Cuando asigna el guión bajo en el ámbito global, no solo obstruye el valor, sino que también detiene el almacenamiento de la salida más reciente. Este no es el caso si asigna el guión bajo dentro de una función o bucle.

Atajos, consejos y trucos de IPython Ejemplos relacionados