Magic commands tips#
In this section some solutions for JupyterLab use for more demanding users.
Get the cell output to use in a variable#
IPython’s output caching system defines several global variables:
[_] (a single underscore): stores previous output, like Python’s default interpreter.
[__] (two underscores): next previous.
[___] (three underscores): next-next previous.
Additionally, after each output x is created, there is a variable _<x>
created with the output as its value.
For example:
x= [i for i in range(7)]
x
[0, 1, 2, 3, 4, 5, 6]
y=_3 #the output of cell 2 , you could use also y=__
y
[0, 1, 2, 3, 4, 5, 6, 12]
y.append(12)
y
[0, 1, 2, 3, 4, 5, 6, 12, 12]
type(y)
list
Display docstrings#
You can place the ? character before or after (no space allowed) the object you are looking for docs.
Example:
?print
Docstring:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
Type: builtin_function_or_method
Display source code#
To access the source code simply use ?? instead.
Example to get the source code of the pprint command:
??pprint
source:
@line_magic
def pprint(self, parameter_s=''):
"""Toggle pretty printing on/off."""
ptformatter = self.shell.display_formatter.formatters['text/plain']
ptformatter.pprint = bool(1 - ptformatter.pprint)
print('Pretty printing has been turned',
['OFF','ON'][ptformatter.pprint])