"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como interromper um loop While com pressionamentos de tecla sem interrupções do teclado?

Como interromper um loop While com pressionamentos de tecla sem interrupções do teclado?

Publicado em 2024-11-08
Navegar:763

How to Interrupt a While Loop with Keystrokes without KeyboardInterrupts?

Interrupção do loop While com pressionamentos de tecla

Em um cenário em que você está lendo dados seriais e gravando-os em um arquivo CSV usando um loop while , talvez você queira fornecer aos usuários a opção de encerrar o loop para interromper a coleta de dados. Este artigo explora técnicas para implementar tal recurso sem usar explicitamente interrupções de teclado.

Uma abordagem direta é utilizar o bloco try-except para lidar com uma exceção KeyboardInterrupt:

try:
    while True:
        # Do your serial operations here

except KeyboardInterrupt:
    pass

Nesse caso, pressionar Ctrl-C (a combinação usual de teclas para aumentar KeyboardInterrupt) fará com que o loop saia normalmente. A exceção é capturada fora do loop, garantindo que o script continue em execução mesmo após o término do loop.

Como observação, usar a função opencv.waitKey(), conforme visto em seu código, não funcionará fora dos aplicativos GUI e não é recomendado para esta finalidade.

Declaração de lançamento Este artigo foi reimpresso em: 1729558875 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3