Unterbrechen der While-Schleife mit Tastenanschlägen
In einem Szenario, in dem Sie serielle Daten lesen und sie mithilfe einer While-Schleife in eine CSV-Datei schreiben möchten Sie Benutzern möglicherweise die Möglichkeit geben, die Schleife zu beenden, um die Datenerfassung zu stoppen. In diesem Artikel werden Techniken zum Implementieren einer solchen Funktion untersucht, ohne explizit Tastaturinterrupts zu verwenden.
Ein einfacher Ansatz besteht darin, den Try-Except-Block zu verwenden, um eine KeyboardInterrupt-Ausnahme zu behandeln:
try:
while True:
# Do your serial operations here
except KeyboardInterrupt:
pass
In diesem Fall führt das Drücken von Strg-C (die übliche Tastenkombination zum Auslösen von KeyboardInterrupt) dazu, dass die Schleife ordnungsgemäß beendet wird. Die Ausnahme wird außerhalb der Schleife abgefangen, wodurch sichergestellt wird, dass das Skript auch nach Beendigung der Schleife weiter ausgeführt wird.
Hinweis: Die Verwendung der Funktion opencv.waitKey(), wie sie in Ihrem Code zu sehen ist, funktioniert außerhalb von GUI-Anwendungen nicht und wird für diesen Zweck nicht empfohlen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3