IPython Documentation
IPython Documentation
Release 0.11 The IPython Development Team
July 31, 2011
CONTENTS
1 Introduction
1
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Enhanced interactive Python shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Interactive parallel computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 What's new in IPython
5
2.1 Development version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 0.11 Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Issues closed in the 0.11 development cycle . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4 0.10 series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5 0.9 series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.6 0.8 series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3 Installation
47
3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.2 Quickstart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3 Installing IPython itself . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.4 Basic optional dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.5 Dependencies for IPython.parallel (parallel computing) . . . . . . . . . . . . . . . . . . . . 51
3.6 Dependencies for IPython.zmq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.7 Dependencies for ipython qtconsole (new GUI) . . . . . . . . . . . . . . . . . . . . . . . . 51
4 Using IPython for interactive work
53
4.1 Introducing IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2 IPython Tips & Tricks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3 IPython reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.4 IPython as a system shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.5 A Qt Console for IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5 Using IPython for parallel computing
95
5.1 Overview and getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.2 Starting the IPython controller and engines . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.3 IPython's Direct interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.4 The IPython task interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
5.5 Using MPI with IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
i
5.6 IPython's Task Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 5.7 Security details of IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 5.8 Getting started with Windows HPC Server 2008 . . . . . . . . . . . . . . . . . . . . . . . 138 5.9 Parallel examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 5.10 DAG Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 5.11 Details of Parallel Computing with IPython . . . . . . . . . . . . . . . . . . . . . . . . . . 163 5.12 Transitioning from IPython.kernel to IPython.parallel . . . . . . . . . . . . . . . . . . . . . 173
6 Configuration and customization
179
6.1 Overview of the IPython configuration system . . . . . . . . . . . . . . . . . . . . . . . . 179
6.2 IPython extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.3 IPython plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.4 Configuring the ipython command line application . . . . . . . . . . . . . . . . . . . . . . 188
6.5 Editor configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.6 Outdated configuration information that might still be useful . . . . . . . . . . . . . . . . . 192
7 IPython developer's guide
197
7.1 How to contribute to IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
7.2 Working with IPython source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
7.3 Coding guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
7.4 Documenting IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
7.5 Testing IPython for users and developers . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
7.6 Releasing IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
7.7 Development roadmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
7.8 IPython module organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
7.9 Messaging in IPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
7.10 Messaging for Parallel Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.11 Connection Diagrams of The IPython ZMQ Cluster . . . . . . . . . . . . . . . . . . . . . 248
7.12 The magic commands subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
7.13 Notes on code execution in InteractiveShell . . . . . . . . . . . . . . . . . . . . . 257
7.14 IPython Qt interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
7.15 Porting IPython to a two process model using zeromq . . . . . . . . . . . . . . . . . . . . 260
8 The IPython API
263
8.1 config.application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.2 config.configurable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
8.3 config.loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.4 core.alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
8.5 core.application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
8.6 core.autocall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
8.7 core.builtin_trap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
8.8 pilerop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
8.9 pleter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
8.10 pleterlib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
8.11 core.crashhandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
8.12 core.debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
8.13 core.display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
8.14 core.display_trap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
ii
8.15 core.displayhook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 8.16 core.displaypub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 8.17 core.error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 8.18 core.excolors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 8.19 core.extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 8.20 core.formatters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 8.21 core.history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 8.22 core.hooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 8.23 core.inputsplitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 8.24 core.interactiveshell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 8.25 core.ipapi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 8.26 core.logger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 8.27 core.macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 8.28 core.magic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 8.29 core.magic_arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 8.30 core.oinspect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448 8.31 core.page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 8.32 core.payload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 8.33 core.payloadpage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 8.34 core.plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 8.35 core.prefilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 8.36 core.profileapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 8.37 core.profiledir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 8.38 core.prompts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 8.39 core.shellapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 8.40 core.splitinput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 8.41 core.ultratb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 8.42 lib.backgroundjobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 8.43 lib.clipboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 8.44 lib.deepreload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 8.45 lib.demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554 8.46 lib.guisupport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 8.47 lib.inputhook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570 8.48 lib.irunner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573 8.49 lib.latextools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579 8.50 lib.pretty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579 8.51 lib.pylabtools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585 8.52 parallel.apps.baseapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586 8.53 parallel.apps.ipclusterapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593 8.54 parallel.apps.ipcontrollerapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 8.55 parallel.apps.ipengineapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621 8.56 parallel.apps.iploggerapp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 8.57 parallel.apps.launcher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 8.58 parallel.apps.logwatcher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717 8.59 parallel.apps.win32support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720 8.60 parallel.apps.winhpcjob . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 8.61 parallel.client.asyncresult . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739 8.62 parallel.client.client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743
iii
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.