Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Desafio hora da prática Python

Segue resolução dos desafios em Python, estou com erro:

print("Nome: Renê \nSobrenome: Cunha")

print("R \nE \nN \nÊ")

print(10, 'de Março de',  1988)

#aproveitei este ultimo desafio para entender mais sobre o import. logo importei a data e a hora atual.

import datetime
import pytz
fuso_brasileiro = pytz.timezone("America/Sao_Paulo")
data_hora_atual = datetime.datetime.now(fuso_brasileiro)
data_formatada = data_hora.strftime("%d/%m/%Y %H:%M:%S")
print(data_formatada)
#resultado: 16/04/2025 16:26:19
1 resposta
solução!

Oi, Renê!

Agradeço por compartilhar seu código com a comunidade Alura.

O seu código para os desafios está muito bom, e a sua iniciativa de explorar as bibliotecas datetime e pytz para lidar com datas e fusos horários é excelente.

O erro que você mencionou está acontecendo na penúltima linha do seu script, especificamente um NameError (Erro de Nome).

Vamos analisar esta parte:

# ...
data_hora_atual = datetime.datetime.now(fuso_brasileiro)
data_formatada = data_hora.strftime("%d/%m/%Y %H:%M:%S")
print(data_formatada)

O problema é um pequeno detalhe no nome da variável.

  1. Você armazenou a data e hora atual na variável chamada data_hora_atual.
  2. Porém, na linha seguinte, você tentou formatar uma variável chamada data_hora (sem o _atual).

Como o Python não encontra nenhuma variável com o nome data_hora, ele apresenta o erro.

Como corrigir:

Basta garantir que você está usando o nome exato da variável que criou. Altere a linha da formatação para usar data_hora_atual:

# Correção: usar a variável data_hora_atual
data_formatada = data_hora_atual.strftime("%d/%m/%Y %H:%M:%S")

O seu código completo e corrigido ficaria assim:

print("Nome: Renê \nSobrenome: Cunha")

print("R \nE \nN \nÊ")

print(10, 'de Março de',  1988)

#aproveitei este ultimo desafio para entender mais sobre o import. logo importei a data e a hora atual.

import datetime
import pytz
fuso_brasileiro = pytz.timezone("America/Sao_Paulo")
data_hora_atual = datetime.datetime.now(fuso_brasileiro)
# A correção está na linha abaixo:
data_formatada = data_hora_atual.strftime("%d/%m/%Y %H:%M:%S")
print(data_formatada)

Parabéns pela resolução dos desafios e por ir além do que foi pedido.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!