Ich habe ein Python-Programm, das Batteriespannungen und Temperaturen in einem Elektroauto anzeigt. Ich führe es normalerweise von einer Befehlszeile auf einem Mac aus, indem ich einfach den Aufwärtspfeil verwende, um den Befehl zum Ändern des Verzeichnisses zu finden, und dann den Pfeil nach oben, um den Befehl zum Ausführen des Programms zu finden. Wir haben herausgefunden, wie man ein Skript schreibt, das dies automatisch ausführt und es als Anwendung speichert. Es funktioniert großartig, aber ich weiß nicht, wie ich das Programm beenden soll. Ich benutze Control C bei der Verwendung der Befehlszeile. Wie kann ich ein Skript oder eine App ausführen? Ich möchte unsere Kunden nicht bitten, die Befehlszeile zu verwenden.Stoppen eines Python-Programms
Antwort
import sys; sys.exit()
stoppt das Python-Programm. Wenn Sie diesen Code aufrufen, liegt es an Ihnen und hängt von den Details Ihres Programms ab (Sie könnten es passieren, wenn eine bestimmte Taste gedrückt wird, oder nach einer bestimmten Zeit oder wenn andere Bedingungen erfüllt sind). Seien Sie auch vorsichtig, wenn Sie vor dem Programmende "Aufräumen" müssen - dies hängt auch von der Art der Anwendung ab.
Wenn aus irgendeinem Grund Sie es in genau stoppen wollen die gleiche Weise bei gedrückter Ctrl-C wie Schlagen, Sie
raise KeyboardInterrupt
Das Programm stoppt sauber mit einem Control c von einer Befehlszeile, aber jetzt läuft es ohne Terminalfenster, so dass wir in der Lage sein müssen, das Programm mit der roten Beenden-Taste zu beenden. – user1330678
Dann, wie ich in der Antwort sage, machen Sie einen roten Quit Button, der den Code 'import sys; sys.exit() '. Wie Sie die rote Schaltfläche "Beenden" erstellen, hängt vollständig von den Details der Anwendung ab. –
- 1. Stoppen eines Timers
- 2. Stoppen eines Symfony-Konsole Befehl
- 3. Stoppen eines Hintergrunddienstes von Benachrichtigung
- 4. Stoppen eines programmgesteuert instanziierten Storyboards
- 5. PendingIntent zum Starten und Stoppen eines Service
- 6. Stoppen eines Multi-Thread-Windows-Dienstes
- 7. Ausführung eines mit execfile aufgerufenen Skripts stoppen
- 8. Grails - Ausnahme beim Stoppen/Abbrechen eines Uploads
- 9. Stoppen eines cherrypy Servers über http
- 10. Code zum Stoppen eines Youtube-Videos?
- 11. C#: Stoppen eines Threads nach einer Exception
- 12. Stoppen eines IntentService von einer Aktivität
- 13. Replikatsatz stoppen MongoDB
- 14. JBoss Server Stoppen
- 15. Stoppen Sie die Ausführung eines Versprechens Sequelize in Express.js
- 16. Wie kann ich das Senden eines Remoteformulars stoppen?
- 17. Stoppen und Starten eines Timers in ASP.NET Ajax
- 18. Stoppen Sie eines der Click-Ereignisse auf der gleichen Schaltfläche
- 19. Stoppen und Starten eines Dienstes basierend auf dem Anwendungsstatus
- 20. Stoppen eines R-Skripts ohne Fehlermeldung "Fehler beim Beenden"
- 21. JavaScript: Stoppen Sie die Auswahl eines ziehbaren Elements
- 22. Kann das Stoppen eines Daemons meine Daten beschädigen?
- 23. Stoppen eines Intent-Dienstes, der in Android eine Zeittask ausführt
- 24. Starten und Stoppen eines anderen Prozesses, wenn Mongrel Rails startet
- 25. Stoppen eines laufenden Prozesses über GUI, in Java
- 26. Starten oder Stoppen eines Agenten durch einen anderen Agenten
- 27. Eclipse/Zend Studio, Validierung für Teile eines Projektbaums stoppen
- 28. Richtiges Stoppen, Warten und Zurücksetzen eines node.js heroku-Prozesses
- 29. Merkwürdiger Dockerfehler beim Stoppen und Starten eines Containers
- 30. Stoppen eines Webtests, wenn eine Extraktionsregel fehlgeschlagen ist
Was für ein Programm tun können, ist es? GUI? TUI? –
Unter welchen Bedingungen soll es aufhören? Es wäre leicht, das Programm zum Beispiel nach einer gewissen Zeit zu beenden. Oder möchten Sie dem Endanwender eine grafische Oberfläche zur Verfügung stellen, mit der er sie beenden kann? Vielleicht ein separates .py-Skript, auf das sie doppelklicken könnten? – octern
Das Programm ist ein Realtim-Grafikdisplay. Der einzige Grund dafür, dass es aufhört, ist, wenn der Kunde es fertig betrachtet - genauso wie Word oder ein anderes Programm zu beenden. Da wir es als Mac-App laufen lassen, möchten wir es beenden, indem wir einfach auf den roten Schließen-Knopf klicken. Wäre das schwer zu tun? – user1330678