Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado.

Por Sharlene Khan
CompartilharTweetarCompartilharCompartilharCompartilharE-mail

Se você é iniciante em Python, este despertador simples é uma excelente introdução prática.

Há muitos exercícios que você pode usar para fortalecer suas habilidades em Python. Um desses exercícios é um despertador, que você pode escrever como um único arquivo de script. Você também pode executá-lo usando um prompt de comando.

No script do despertador, o usuário precisa definir a hora que deseja que o alarme toque. O script Python exibirá uma mensagem "Wake up" para o usuário quando o alarme disparar.

Você também pode adicionar uma contagem regressiva para mostrar ao usuário quanto tempo ele tem que esperar até que o alarme dispare.

Como definir o alarme

Crie um script Python e adicione as primeiras instruções impressas para perguntar ao usuário quando ele gostaria de definir o alarme. Se você não estiver familiarizado com algumas das sintaxes do Python, você pode ver algumas

instagram viewer
exemplos básicos de python para ajudá-lo a entender os fundamentos.

  1. Crie um novo arquivo e chame-o alarme.py.
  2. Abra o script Python usando qualquer editor de texto, como o Notepad++.
  3. Na parte superior do arquivo, importe os módulos datetime e time. O programa os usará ao calcular quanto tempo precisa esperar até que o alarme dispare. Você pode usar Módulo de tempo do Python atrasar a execução, entre outras ações.
    importar data hora
    importar tempo
  4. Adicione um loop while. Dentro do loop while, peça ao usuário para inserir um horário de alarme válido, no formato [hora: minuto]. O loop while será repetido se o usuário inserir um número inválido.
    inválido = Verdadeiro

    enquanto(inválido):
    # Obtenha uma entrada de usuário válida para a hora do alarme
    imprimir("Definir um válido tempopara o alarme (Ex. 06:30)")
    userInput = input(">>")

  5. Dentro do loop while, converta a entrada do usuário em uma matriz que separa o valor da hora do valor do minuto.
    # Por exemplo, isso converterá 6:30 em uma matriz de [6, 30].
    alarmTime = [int (n) para n em userInput.split(":")]
  6. Ainda dentro do loop while, valide os valores de hora e minuto. A hora deve ser um número entre 0 e 23 e o minuto deve ser um número entre 0 e 59. Se essas condições não forem atendidas, o booleano inválido fará com que o loop while se repita e peça ao usuário para inserir um novo valor.
    # Valide a hora digitada entre 0 e 24 (horas) ou 0 e 60 (minutos)
    if alarmeTime[0] >= 24 ou alarmTime[0] < 0:
    inválido = Verdadeiro
    elif alarmTime[1] >= 60 ou alarmTime[1] < 0:
    inválido = Verdadeiro
    outro:
    inválido = Falso

Como contar quanto tempo esperar até o alarme disparar

Aguarde até que o alarme dispare contando quantos segundos o programa terá que esperar.

  1. Abaixo do loop while, converta a hora do alarme para o segundo durante o dia. Para referência, há 86400 segundos em um dia. Se o usuário inserir 00:01 (um minuto depois da meia-noite), a hora do alarme em segundos será 60. Se o usuário digitar 23:59, a hora do alarme em segundos será 86340.
    # Número de segundos em uma hora, minuto e segundo
    segundos_hms = [3600, 60, 1]
    # Converta a hora do alarme em segundos
    alarmSeconds = sum([a*b for a, b in zip (seconds_hms[:len (alarmTime)], alarmTime)])
  2. Use a função datetime.now() para determinar a hora atual. Converta a hora atual do dia em segundos.
    agora = datetime.datetime.now()
    currentTimeInSeconds = sum([a*b for a, b in zip (seconds_hms, [now.hour, now.minute, now.second])])
  3. Calcule o número de segundos até o alarme disparar.
    secondsUntilAlarm = alarmSeconds - currentTimeInSeconds
  4. Se a diferença horária for negativa, significa que o alarme precisa ser acertado para o dia seguinte.
    se segundosAtéAlarm < 0:
    segundosAtéAlarme += 86400# número de segundos em um dia
  5. Exibir uma mensagem para o usuário para que ele saiba que o alarme foi definido com sucesso.
    print("Alarme é definir!")
    imprimir("O alarme tocará em %s" % datetime.timedelta (seconds=secondsUntilAlarm))

Como Tocar o Alarme

Para tocar o alarme, aguarde os segundos restantes antes de imprimir um "Acorde!" mensagem ao usuário.

  1. Use time.sleep para aguardar a quantidade de segundos necessária até que o alarme precise disparar.
    tempo.dormir(segundos Até Alarme)
  2. Exibir a mensagem "Wake up" para o usuário quando o alarme disparar.
    imprimir("Toque Toque... Hora de acordar!")

Como adicionar uma contagem regressiva antes do alarme tocar

Para adicionar uma contagem regressiva para cada segundo, use um loop for para imprimir os segundos restantes para o usuário.

  1. Substitua a linha time.sleep. Adicione um loop for para cada segundo até que o alarme dispare e exiba os segundos restantes para o usuário.
    para i no intervalo (0, secondsUntilAlarm):
    tempo.dormir(1)
    segundosAtéAlarme -= 1
    imprimir(datetime.timedelta (seconds=secondsUntilAlarm))

Como executar o programa despertador

Execute o script navegando até o arquivo usando a linha de comando. Use o comando python para iniciar o script e definir um horário de alarme.

  1. Abra um prompt de comando ou terminal. Navegue até o local do arquivo alarm.py. Por exemplo, se você armazenou seu arquivo Python na área de trabalho, use cd Desktop.
    cd Área de Trabalho
  2. Use o comando python para executar o script Python.
    Pitãoalarme.py
  3. Defina uma hora válida para o alarme, no formato [hora: minuto]. Por exemplo, 4:30.
  4. O alarme será definido e iniciará uma contagem regressiva para cada segundo até que o alarme precise disparar. Aguarde até que o alarme termine a contagem regressiva.
  5. Assim que o programa concluir a contagem regressiva, o programa exibirá uma mensagem para mostrar que o alarme está tocando.

Crie Programas Simples Usando Python

Um despertador é um bom exercício que você pode praticar para aprimorar suas habilidades em Python. Você pode escrever o aplicativo de despertador em um único arquivo de script e executá-lo usando uma linha de comando. Em tempo de execução, o programa solicitará que o usuário insira um horário válido para definir o alarme.

Depois de definir o alarme, calcule quantos segundos você precisará esperar até que o despertador toque. Faça o programa esperar esse tempo antes de exibir uma mensagem ao usuário quando o alarme disparar.

Você também pode recriar este exercício de alarme em outros idiomas. Você pode aprender a criar um relógio digital usando HTML, CSS e JavaScript.

Como criar um relógio digital usando HTML, CSS e JavaScript

Leia a seguir

CompartilharTweetarCompartilharCompartilharCompartilharE-mail

Tópicos relacionados

  • Programação
  • Programação
  • Pitão
  • Tutoriais de codificação

Sobre o autor

Sharlene Khan (52 Artigos Publicados)

Shay trabalha em tempo integral como desenvolvedor de software e gosta de escrever guias para ajudar outras pessoas. Ela é bacharel em TI e tem experiência anterior em Garantia de Qualidade e tutoria. Shay adora jogar e tocar piano.

Mais de Sharlene Khan

Comente

Assine a nossa newsletter

Junte-se à nossa newsletter para obter dicas de tecnologia, análises, e-books gratuitos e ofertas exclusivas!

Clique aqui para se inscrever