2015-09-15 21 views
6

Gibt es eine Möglichkeit festzustellen, ob ein Befehl gerade in der PyCharm-Konsole ausgeführt wird?Prüfen Sie, ob der vorherige Befehl in der PyCharm IPython-Konsole noch läuft.

Nach dem Ausführen einer interaktiven Python-Sitzung im Terminal wird die Eingabeaufforderung nicht mehr angezeigt, bis die Ausführung beendet ist. Zum Beispiel, wenn ich time.sleep(5)aufrufe, dauert es 5 Sekunden, bis die >>> wieder erscheint, also weiß ich, dass der Befehl noch ausgeführt wird.

Beim Ausführen einer IPython-Konsole in PyCharm verschwindet die Eingabeaufforderung nie. Erst wenn ich wieder tippe, erhalte ich die Meldung "Vorheriger Befehl läuft noch". Auf diese Weise ist es schwer zu erkennen, wann ein Befehl beendet wurde, ohne die Aufforderung ständig zu prüfen.

+0

Ich sehe sie diese offensichtlichen Fehler seit mindestens September nicht festgelegt. – Ant6n

Antwort

5

Ich habe den besten Weg gefunden, wenn Sie IPython verwenden, ist der %time Magic-Befehl, wenn Sie einen langen Befehl ausführen müssen. Weitere Informationen finden Sie https://ipython.org/ipython-doc/3/interactive/magics.html#magic-time

Verbrauch:

In[1]: %time time.sleep(5) 
Wall time: 5 s 

Die zweite Zeile erscheint, wenn der Code beendet. Dies hat auch den zusätzlichen Vorteil, Ihnen zu sagen, wie lange die Ausführung dauerte.

Hinweis: Verwechseln Sie es nicht aus Versehen mit dem %timeit Befehl, den Code ausgeführt wird mehrmals

0
+0

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz zur Verfügung zu stellen. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. - [Aus Bewertung] (/ review/low-quality-posts/14182196) – sushildlh

+3

@sushildlh Die wesentlichen Teile des Links sind bereits in der Antwort - das vom OP beschriebene Problem ist in der neuesten Version der Software gelöst. Es gibt nichts mehr zu sagen. – tchakravarty

+0

Können Sie erklären, was in der neuesten Version passiert? Das Lesen des Fehlerberichts zeigt nicht wirklich an, was passiert - ein Screenshot ist enthalten, aber das verwendet eine andere Konsole, nicht die IPython-Version. Es gibt keinen Kommentar oder Screenshot, der den Fix beschreibt, es ist nur der Status, der das sagt. – Jezzamon

Verwandte Themen