##// END OF EJS Templates
Document cell magics in %magic....
Fernando Perez -
Show More
@@ -120,11 +120,36 b" IPython's 'magic' functions"
120
120
121 The magic function system provides a series of functions which allow you to
121 The magic function system provides a series of functions which allow you to
122 control the behavior of IPython itself, plus a lot of system-type
122 control the behavior of IPython itself, plus a lot of system-type
123 features. All these functions are prefixed with a % character, but parameters
123 features. There are two kinds of magics, line-oriented and cell-oriented.
124 are given without parentheses or quotes.
124
125 Line magics are prefixed with the % character and work much like OS
126 command-line calls: they get as an argument the rest of the line, where
127 arguments are passed without parentheses or quotes. For example, this will
128 time the given statement::
129
130 %timeit range(1000)
131
132 Cell magics are prefixed with a double %%, and they are functions that get as
133 an argument not only the rest of the line, but also the lines below it in a
134 separate argument. These magics are called with two arguments: the rest of the
135 call line and the body of the cell, consisting of the lines below the first.
136 For example::
137
138 %%timeit x = numpy.random.randn((100, 100))
139 numpy.linalg.svd(x)
140
141 will time the execution of the numpy svd routine, running the assignment of x
142 as part of the setup phase, which is not timed.
143
144 In a line-oriented client (the terminal or Qt console IPython), starting a new
145 input with %% will automatically enter cell mode, and IPython will continue
146 reading input until a blank line is given. In the notebook, simply type the
147 whole cell as one entity, but keep in mind that the %% escape can only be at
148 the very start of the cell.
125
149
126 NOTE: If you have 'automagic' enabled (via the command line option or with the
150 NOTE: If you have 'automagic' enabled (via the command line option or with the
127 %automagic function), you don't need to type in the % explicitly. By default,
151 %automagic function), you don't need to type in the % explicitly for line
152 magics; cell magics always require an explicit '%%' escape. By default,
128 IPython ships with automagic on, so you should only rarely need the % escape.
153 IPython ships with automagic on, so you should only rarely need the % escape.
129
154
130 Example: typing '%cd mydir' (without the quotes) changes you working directory
155 Example: typing '%cd mydir' (without the quotes) changes you working directory
General Comments 0
You need to be logged in to leave comments. Login now