2008-11-10 28 views
13

Ich sah dies den anderen Tag (scrollen den ganzen Weg hinunter einige der clevere Sachen zu sehen):Gibt es eine gute Python-GUI-Shell?

http://www.mono-project.com/docs/tools+libraries/tools/repl/

Und fragte sich, ob so etwas für Python existiert.

Also, gibt es eine gute Python-GUI-Shell, die Dinge wie diese C# Shell tun kann?

Bearbeiten: Hier sind Links zu Screenshots aus dem Artikel, die zeigen, was ich interessiert bin.

Ein Beispiel für die Art von Dingen, die mich interessieren:

http://www.mono-project.com/archived/images/7/75/GSharpPlot.png

Sie sind in der Lage Haken hinzufügen GUI-Elemente wie die Handlung zu erzeugen oder sogar dumme Dinge tun:

http://www.mono-project.com/archived/images/b/bf/GSharpRenderHandler.png

Ich glaube nicht, dass dies mit einer der Konsolen-Shells, die ich versucht habe (die normale Python-Shell, Ipython) möglich ist.

Edit: Ich bin nicht auf der Suche nach einer IDE. Wenn Sie sich den Link ansehen, bekommen Sie eine Vorstellung davon, was ich will.

+0

Wie aktualisieren Sie Ihre Frage, um Ihren Anwendungsfall zu beschreiben. Was möchten Sie tun? Was soll das System als Antwort tun? Die Bilder sind nur Bilder und - offensichtlich - schwer in einen Anwendungsfall zu interpretieren. Sag nicht, was du nicht willst. Sag was du willst. –

+0

Warum ist das Aufhängen eine GUI? –

+0

@ S.Lott: Fügen Sie Hooks/Builtins hinzu, um Grafiken inline anzuzeigen. Dies ist eine Möglichkeit, die Bilder zu beschreiben, mit denen ich verlinkt bin. –

Antwort

13

Ein Projekt, das mir bekannt ist, bietet ähnliche Funktionen (Inline-Plotten, anpassbares Rendering) ist Reinteract. Ein anderes (obwohl möglicherweise etwas Schwergewicht für den allgemeinen Gebrauch) ist SAGE, die Funktionalität für Web-basierte notebooks bietet.

Diese sind nicht ganz Shells - sie sind eher als mathematisches Notizbuch entworfen (so können Sie beispielsweise ein früheres Ergebnis modifizieren und die Änderung für spätere Berechnungen verwenden), aber sie sind nahe an dem, was Sie ' suchen, und könnte wahrscheinlich modifiziert werden, um so verwendet zu werden.

+0

Reinteract sieht toll aus! Vielen Dank! –

6

Soweit ich weiß, gibt es nichts da draußen, das die Art von Whiz-Bang-Funktionen bietet, die die Mono-Jungs in ihrer neuen Shell implementiert haben, aber das soll nicht heißen, dass die "grundlegende" Python-Interactive-Shell nicht t eine Feature-vollständige und leistungsstarke Anwendung. Ich könnte etwas wie die C# Shell sehen, die irgendwann entwickelt wird, aber ich denke, ab heute sind die Funktionen, auf die du zeigst, einigermaßen einzigartig. Man könnte argumentieren, dass dies daran liegt, dass niemand an sie gedacht hat, oder weil niemand sie wirklich benötigt hat. Ich neige dazu, Letzteres zu abonnieren, obwohl ich denke, dass beide plausibel sind.

7

Haben Sie sich ipython angesehen? Es ist nicht ganz so "gui". Keine Smileys, tut mir leid. ;-) Es ist aber eine ziemlich gute interaktive Shell für Python.

edit: Ich sehe, dass Sie Ihre Frage überarbeitet, um die Bedeutung GUI zu betonen. In diesem Fall wäre IPython keine gute Übereinstimmung.

Sie könnten auch eine andere Sackgasse retten: Ich schaute DrPython in der Hoffnung, es wäre ähnlich wie PLTs DrScheme, das vergleichbar mit Beispiel aussieht, das Sie auch verknüpft haben. Leider ist DrPython nicht so sehr wie DrScheme.

+0

Ja, danke, das ist nicht was ich suche. –

+0

Keine Smileys ist ein Deal Breaker. : P – titaniumdecoy

+2

Wer sagt keine Smileys! sys.displayhook = Lambda x: sys.stdout.write (([': - (', ': -)'] [x] falls isinstance (x, bool) sonst repr (x)) + '\ n') Du könntest sogar '\ u2639 \ u263a' [x] auf einer Unicode-Konsole verwenden. – Brian

2

Ich denke, dass eine Kombination von Pycrust mit Matplotlib genau das tun kann, was Sie brauchen.Pycrust ist Teil der wxPython-Installation und matplotlib sollte separat installiert werden. Beide sind in ca. 5 Minuten einfach zu installieren.

Lesen Sie this über die Integration von Matplotlib mit Pycrust, um dynamische Plots wie die in der von Ihnen geposteten Verbindung zu erzeugen.

+0

Ihr Link ist kaputt. – Brian

6

(Sorry für Thread Nekromantie, aber diese Seite kommt noch hoch in einer Google-Suche auf und ich nehme an, es muss ein Interesse an dem Thema sein.)

Ein GUI-Shell für Python, die ich glaube, ganz neu ist, ist DreamPie. Es geht nicht ganz so weit wie die Screenshots in der Frage, aber es könnte der nächste sein, der am ehesten verfügbar ist. Sie heben zumindest interaktives grafisches Plotten in ihrer Liste von nützlichen Merkmalen hervor.

+0

Diese Frage kommt bei Google immer noch hoch und das neueste DreamPie scheint eine bessere Alternative zu Reinteract zu sein (abgestimmt!). – MadChuckle

1

DreamPie ist mein persönlicher Favorit. Es scheint nicht restriktiver als CSharpRepl. Beispielsweise kann das Diagrammzeichnungsbeispiel ausgeführt werden, wenn matplotlib installiert ist. Auf der DreamPie-Website gibt es dazu einen Beispiel-Screenshot (http://dreampie.sourceforge.net/).

Bpython ist ähnlich, und ich mag es besser. Aber es ist nur unter Linux als Binärdatei verfügbar.

Verwandte Themen