ipython Zelfstudie
Aan de slag met ipython
Zoeken…
Opmerkingen
IPython is een Read-Evaluate-Print Loop- shell voor interactieve Python-ontwikkeling. Het ondersteunt interactieve visualisaties met behulp van GUI-toolkits en biedt een kernel voor Jupyter . Het kan ook worden ingebed in andere projecten.
Er zijn andere vergelijkbare REPL-shells voor Python, bijvoorbeeld ptpython en bpython .
versies
Versie | Publicatiedatum |
---|---|
5.0.0 | 2016/07/07 |
4.2.0 | 2016/04/20 |
4.1.0 | 2016/02/02 |
4.0.0 | 2015/08/12 |
3.2.0 | 2015/06/21 |
3.1.0 | 2015/04/03 |
3.0.0 | 2015/02/27 |
2.4.0 | 2015/01/30 |
2.3.0 | 2014/10/01 |
2.2.0 | 2014/08/06 |
2.1.0 | 2014/05/21 |
2.0.0 | 2014/04/02 |
0.13 | 2012-06-30 |
0.12 | 2011-12-19 |
0.11 | 2011-07-31 |
0.10 | 2010-09-01 |
0.9 | 2008-09-13 |
Installatie en gebruik
Net als de ingebouwde interactieve shell van python
, is IPython een shell van REPL ( Read-Evaluate-Print Loop ), met een verscheidenheid aan functies die het aangenamer maken om te gebruiken voor dagelijkse Python-ontwikkeling dan de ingebouwde REPL-shell .
Installatie
Om het te installeren:
pip install ipython
Of, via Anaconda :
# To install into the active environment:
$ conda install ipython
# Or, to create a new environment with IPython installed:
$ conda create -n <env_name> ipython
Of, via Enthought Canopy :
$ enpkg ipython
Gebruik
Voer het na installatie uit met uw standaard Python (2 of 3) met behulp van:
ipython
Of om Python 3 te gebruiken:
ipython3
Hulp krijgen
?
Dit geeft u een inleiding en een overzicht van de functies van IPython.
object?
Hierin staan alle methoden en velden van het object en de bijbehorende documentatie (indien aanwezig).
object??
Hetzelfde als hierboven, biedt nog meer details over het object, in het bijzonder zal proberen de broncode voor het object te vinden en weer te geven.
object.<TAB Key>
TAB- voltooiing die de beschikbare velden / methoden van een object opsomt en doorloopt. Vanwege het dynamische karakter van Python kunnen niet alle methoden op deze manier worden ontdekt. Ook privémethoden (beginnend met _
) zijn standaard verborgen, voer een _
en druk nogmaals op TAB om ze weer te geven.
%quickref
Dit geeft een snelreferentie weer voor de IPython-shell.
IPython tegen Jupyter
IPython bestaat uit twee delen: een opdrachtregelinterface die de standaard python
REPL vervangt en een manier om Python door de webbrowser te laten lopen als een grafische gebruikersinterface.
Met de nieuwste ontwikkelingen is het browsergedeelte opgesplitst in het Jupyter- project waarmee meerdere programmeertalen de grafische interface kunnen gebruiken. Het is nog steeds mogelijk om IPython als Python-kernel hiervoor te gebruiken.
Actuele installatie-instructies voor Jupyter zijn te vinden in de officiële installatiedocumenten .
ipython
of jupyter console
, wanneer deze wordt opgeroepen vanaf de opdrachtregel zonder andere parameters, komt een interactieve terminalsessie binnen zoals hieronder:
jupyter qtconsole
, of ipython qtconsole
vóór versie 5 , start een QT-gebaseerde console met meerdere tabbladen:
jupyter notebook
, of ipython notebook
vóór versie 5 , start een server en opent standaard een webpagina op http://localhost:8888/tree
, met de weergave "Home" van de huidige map. Hiermee kunt u bestaande notebooks of nieuwe kernels in verschillende talen openen, afhankelijk van welke u hebt geïnstalleerd ; elk wordt geopend in een nieuw browsertabblad.
Met notebooks kunt u markdown , inclusief MathJax , code uit de kernel van uw keuze, plots en grafieken, afbeeldingen en zelfs video's mixen.
Plakken in IPython
%paste
Dit is de primaire magische methode voor plakken. Het plakt rechtstreeks tekst van het systeemklembord en behandelt op intelligente wijze veelvoorkomende problemen met nieuwe regels en inspringen.
%cpaste
Als u IPython via SSH gebruikt, gebruikt %cpaste
plaats daarvan %cpaste
, omdat dit geen toegang nodig heeft tot het externe klembord van het systeem.
Sinds IPython 5.0.0 moet de verbeterde prompt toolkit direct omgaan met het plakken van multi-line code zonder de noodzaak van %paste
of %cpaste
.
Bewaar variabelen op IPython
%storemagic
slaat variabelen en macro's op in de database van %storemagic
. Om automatisch opgeslagen variabelen te herstellen bij het opstarten, voeg dit toe aan ipython_config.py
:
c.StoreMagic.autorestore = True
Voorbeeld:
In [1]: l = ['hello',10,'world']
In [2]: %store l
In [3]: exit
(IPython session is closed and started again...)
ville@badger:~$ ipython
In [1]: l
Out[1]: ['hello', 10, 'world']
Notitie:
Opgemerkt moet worden dat als u de waarde van een variabele wijzigt, u deze opnieuw% moet opslaan als u de nieuwe waarde wilt behouden.
Merk ook op dat de variabelen pickbaar moeten zijn; de meeste basistypen van pythons kunnen veilig% store'd worden.