Timing code
At some point, you'll probably spend some effort optimizing code to run faster. Timing how quickly your code runs is essential for this optimization. You can use the timeit
magic command to time how long it takes for a function to run, like so:
If you want to time how long it takes for a whole cell to run, you’d use %%timeit
like so:
Embedding visualizations in notebooks
As mentioned before, notebooks let you embed images along with text and code. This is most useful when you’re using matplotlib
or other plotting packages to create visualizations. You can use %matplotlib
to set up matplotlib
for interactive use in the notebook. By default figures will render in their own window. However, you can pass arguments to the command to select a specific "backend", the software that renders the image. To render figures directly in the notebook, you should use the inline backend with the command %matplotlib inline
.
Tip: On higher resolution screens such as Retina displays, the default images in notebooks can look blurry. Use
%config InlineBackend.figure_format = 'retina'
after%matplotlib inline
to render higher resolution images.
Debugging in the Notebook
With the Python kernel, you can turn on the interactive debugger using the magic command %pdb
. When you cause an error, you'll be able to inspect the variables in the current namespace.
Above you can see I tried to sum up a string which gives an error. The debugger raises the error and provides a prompt for inspecting your code.
Read more about pdb
in the documentation. To quit the debugger, simply enter q
in the prompt.