IPython ist ein freies Software-Projekt, das versucht:
Geben Sie eine interaktive Shell überlegen Pythons Standard. IPython hat viele Funktionen für die Objektinnenschau, System-Shell-Zugang, und seine eigenen speziellen Führungssystem für das Hinzufügen von Funktionalität, wenn interaktiv arbeiten. Es wird versucht, eine sehr effiziente Umgebung sowohl für Python-Code-Entwicklung und für die Exploration von Problemen mit Python-Objekte (in Situationen wie Datenanalyse) sein.
Dienen als bündig, bereit, Dolmetscher für eigene Programme verwenden. IPython können mit einem einzigen Anruf von in einem anderen Programm gestartet werden, die den Zugang zu den aktuellen Namensraum. Dies kann sowohl für die Fehlersuche und für Situationen, in denen eine Mischung aus Stapelverarbeitung und interaktive Untersuchung benötigt werden sehr nützlich sein.
Bieten einen flexiblen Rahmen, der als Basisumgebung für andere Systeme mit Python als die zugrunde liegende Sprache verwendet werden kann. Insbesondere wissenschaftlichen Umgebungen wie Mathematica, IDL und Mathcad inspirierte das Design, aber ähnliche Ideen können in vielen Bereichen sinnvoll sein.
Lassen interaktiven Prüfung von Gewinde grafischen Toolkits. IPython hat die Unterstützung für interaktive, nicht-blockierende Kontrolle von GTK, Qt und WX-Anwendungen über spezielle Gewinde Fahnen. Die normale Python-Shell können dies nur für Tkinter Anwendungen
Eigenschaften .
- Dynamische Objekt Introspektion. Man kann Docstrings, Funktionsdefinition Prototypen, Quellcode, Quelldateien und andere Details eines Objekts zugänglich an den Interpreter mit einem einzigen Tastendruck ("?") Zu gelangen.
- Der Abschluss in der lokalen Namensraum, indem Sie TAB an der Eingabeaufforderung. Dies funktioniert für Keywords, Methoden, Variablen und Dateien im aktuellen Verzeichnis. Dies geschieht über die Readline-Bibliothek und vollen Zugriff auf die Konfiguration Verhalten readline unterstützten wird.
- Nummerierte Ein- / Ausgabeaufforderungen mit Kommando-History (persistent über Sitzungen und für jedes Profil angebunden), Voll Suche in dieser Geschichte und Caching aller Ein- und Ausgabe.
- Benutzer-erweiterbare "Magie" Befehle. Eine Reihe von Befehlen mit% vorangestellt ist für die Steuerung IPython selbst zur Verfügung und stellt Verzeichnissteuerung, Namespace-Informationen und viele Aliase gemeinsames System von Shell-Befehlen.
- Alias-Anlage zur Definition eigener System-Aliasnamen.
- Komplettsystem Shell-Zugang. Zeilen, die mit! sind direkt mit dem System Schale geleitet und mit !! erfasst Shell-Ausgabe in Python-Variablen für die weitere Verwendung.
- Hintergrund Ausführung von Python-Befehle in einem separaten Thread. IPython hat eine interne Jobmanager genannt Arbeitsplätze und eine Bequemlichkeit Hintergrund versetzen magische Funktion namens% bg.
- Die Fähigkeit, python Variablen erweitern beim Aufruf der System-Shell. In einem Shell-Befehl wird jede Python-Variable mit dem Präfix $ erweitert. Ein Doppel $$ ermöglicht Gabe eines wörtlichen $ in die Shell (für den Zugriff auf Shell und Umgebungsvariablen wie $ PATH).
- Filesystem Navigation, über eine magische Befehl, zusammen mit einer anhaltenden Lesezeichen-System (unter Verwendung von Lesezeichen%) für den schnellen Zugriff auf häufig Verzeichnisse besucht.
- Automatische Vertiefung (optional) von Code während der Eingabe (durch die Readline-Bibliothek).
- Macro-System für die schnelle Wieder Ausführung mehrerer Linien früherer Eingang mit einem einzigen Namen.
- Sitzungsprotokollierung (Sie können dann später verwenden diese Protokolle als Code in Ihren Programmen).
- Sitzungswiederherstellung:. Protokolle können wiedergegeben, um eine vorherige Sitzung zu dem Zustand, in dem Sie es verlassen haben wieder herzustellen
- Die ausführliche und farbige Ausnahme Traceback-Ausdrucke. Leichter visuell zu analysieren und im ausführlichen Modus sie viele nützliche Debug-Informationen (im Grunde ein Terminalversion des cgitb Modul) zu produzieren.
- Auto-Klammern: Callable Objects können ohne Klammern ausgeführt werden:. "Sünde 3 'wird automatisch konvertiert' sin (3)"
- Auto-Angabe: mit ',' als erstes Zeichen Kräfte automatische Angabe der Rest der Zeile: 'my_function ab' wird automatisch 'my_function (& rdquo; a & rdquo;, & rdquo; b & rdquo;) "
- Extensible Eingabesyntax. Sie können Filter, die Vorverarbeitung von Benutzereingaben zur Eingabe in besonderen Situationen zu vereinfachen definieren. Dies ermöglicht beispielsweise das Einfügen mehrzeiligen Code-Fragmente, die mit '& gt; & gt; & gt;' oder '...', wie sie von anderen Python-Sitzungen oder der Standard-Python-Dokumentation.
- Flexible Konfigurationssystem. Es verwendet eine Konfigurationsdatei, die permanente Einstellung aller Befehlszeilenoptionen, Laden von Modulen, Code und Dateiausführung ermöglicht. Das System ermöglicht die rekursive Datei Integration, so dass Sie eine Basisdatei mit Standardeinstellungen und Schichten, die andere Anpassungen für bestimmte Projekte laden können.
- Eingebetteter. Sie können IPython als Python-Shell in den eigenen Python-Programme aufrufen. Dies kann sowohl für das Debuggen von Code oder für die Bereitstellung von interaktiven Fähigkeiten, um Ihre Programme mit dem Wissen über den lokalen Namespaces (sehr nützlich bei der Fehlersuche und Datenanalyse-Situationen) verwendet werden.
- Einfache Debugger Zugang. Sie können IPython gesetzt rufen Sie das Python-Debugger (HVE) jedes Mal gibt es eine nicht abgefangene Ausnahme. Das bringt Sie in den Code, der die Ausnahme ausgelöst mit allen Daten zu leben und es ist möglich, den Stapel zu navigieren, schnell der Ursache eines Fehlers. Die% Lauf magische Befehl -mit dem -d optional kann eine beliebige Skript unter pdb der Kontrolle ausgeführt, die automatische Einstellung von ersten Haltepunkte für Sie.
- Profiler Unterstützung. Sie können einzelne Aussagen (ähnlich profile.run ()) oder vollständige Programme im Rahmen des Profilers Kontrolle ausgeführt werden. Dies ist zwar mit dem Standard-Profil-Modul möglich, IPython wickelt diese Funktionalität mit Zauberbefehle (siehe '% prun' und '% Lauf -p') praktisch für eine schnelle interaktive Arbeit.
Was ist neu in dieser Pressemitteilung:
- Diese Version bringt Monaten des langsamen, aber stetigen Entwicklung, und wird der letzte sein, bevor eine umfassende Umstrukturierung und Sanierung von IPython Interna, die bereits im Gange ist. Aus diesem Grund hoffen wir, dass 0,10 wird eine stabile und robuste Release sein, so dass, während die Benutzer anpassen, um einige der API-Änderungen, die mit der Umgestaltung kommen wird, die IPython 0,11 sein wird, werden sie sicher benutzen können 0,10 in allen bestehenden Projekte mit minimalen Änderungen (falls vorhanden).
- IPython 0.10 ist jetzt ein mittelgroßes Projekt mit rund (wie von sloccount Dienstprogramm David Wheelers berichtete) 40.750 Zeilen Python-Code und ein Diff zwischen 0.9.1 und diese Version, die fast 28.000 Zeilen Code und Dokumentation enthält. Unsere Dokumentation im PDF-Format, ist eine 495-seitige PDF-Dokument (auch im HTML-Format zur Verfügung, die beide aus den gleichen Quellen erzeugt wird).
- Viele Benutzer und Entwickler haben Code, Funktionen, Fehlermeldungen und Ideen zu dieser Pressemitteilung. Bitte nicht, uns zu kontaktieren, wenn wir versäumt, Ihren Beitrag hier erkennen zögern. Insbesondere für diese Version haben wir Beitrag aus den folgenden Personen, eine Mischung aus neuen und Stammnamen (in alphabetischer Reihenfolge nach den Vornamen):
- Alexander Clausen: fix # 341.726 .
- Brian Granger:. Viel Arbeit überall (Features, Bugfixes, etc.)
- Daniel Ashbrook:. Bug-Report auf Memory während der Kompilierung, nun behoben
- Darren Dale:. Verbesserungen in der Dokumentation Build-System, Feedback, Design-Ideen
- Fernando Perez: verschiedene Orte .
- Gael Varoquaux: Kern-Code, ipythonx GUI, Design Diskussionen, etc. Viele ...
- John Hunter:. Vorschläge, Fehlerbehebungen Feedback
- Jorgen Stenarson:. Arbeiten an vielen Fronten, Tests, Fehlerbehebungen, Unterstützung win32 usw.
- Laurent Dufrechou: viele Verbesserungen IPython-wx Standalone-Anwendung .
- Lukasz Pankowski: Vorfilter,
Kommentare nicht gefunden