dev-notes/Python/Jupyter/Jupiter Notebook.md
2021-09-22 19:17:55 +02:00

46 lines
2.7 KiB
Markdown

# Jupyter Notebooks Cheat Sheet
## MAGIC COMMANDS
`%quickref` Display the IPython Quick Reference Card
`%magic` Display detailed documentation for all of the available magic commands
`%debug` Enter the interactive debugger at the bottom of the last exception trace-back
`%hist` Print command input (and optionally output) history
`%pdb` Automatically enter debugger after any exception
`%paste` Execute pre-formatted Python code from clipboard
`%cpaste` Open a special prompt for manually pasting Python code to be executed
`%reset` Delete all variables / names defined in interactive namespace
`%page` OBJECT Pretty print the object and display it through a pager
`%run` script.py Run a Python script inside IPython
`%prun` statement Execute statement with cProfile and report the profiler output
`%time` statement Report the execution time of single statement
`%timeit` statement Run a statement multiple times to compute an ensemble average execution time. Useful for timing code with very short execution time
`%who`, `%who_ls`, `%whos` Display variables defined in interactive namespace, with varying levels of information / verbosity
`%xdel` variable Delete a variable and attempt to clear any references to the object in the IPython internals
## INTERACTING WITH THE OPERATING SYSTEM
`!cmd` Execute cmd in the system shell
`output = !cmd args` Run cmd and store the stdout in output
`%alias alias_name cmd` Define an alias for a system (shell) command
`%bookmark` Utilize IPython's directory bookmarking system
`%cd` directory Change system working directory to passed directory
`%pwd` Return the current system working directory
`%pushd` directory Place current directory on stack and change to target directory
`%popd` Change to directory popped off the top of the stack
`%dirs` Return a list containing the current directory stack
`%dhist` Print the history of visited directories
`%env` Return the system environment variables as a dict
Input variables are stored in variables named like `iX`, where `X` is the input line number
IPython is capable of logging the entire console session including input and output
Logging is turned on by typing `%logstart`
Starting a line in IPython with an exclamation point `!`, or bang, tells IPython to execute everything after the bang in the system shell
The console output of a shell command can be stored in a variable by assigning the !-escaped expression to a variable
## TIMING CODE
`%time` runs a statement once, reporting the total execution time
`%timeit` given an arbitrary statement, it has a heuristic to run a statement multiple times to produce a fairly accurate average runtime