2
respostas

Desafio: hora da prática

Foi solicitado no desafio=hora da prátca, esse exercício:

Imprima o dia do seu nascimento em formato dia mês ano. Lembrando que os valores de dia e ano não podem estar entre aspas. Supondo uma data de aniversário dia 28 de fevereiro de 2003, o formato deve estar como no exemplo abaixo:
28 fevereiro 2003

Teoricamente era para fazer a seguinte linha:

print(23,'de outubro de', 1970)

Mas o mesmo está errado, devendo o código ser inscrito dessa maneira, que foi corrigido e sugerido pela própria IA do Google colab.

builtins.print(23,'de outubro de', 1970)

Gostaria de saber a explicação para o uso do builtins, por favor.

2 respostas

Em tempo, veja a frase que a IA respondeu:

Isso significa que a palavra print não está mais funcionando como a função de impressão que você espera. Isso aconteceu porque, em algum momento anterior no notebook, print foi acidentalmente sobrescrito e agora se refere a uma tupla, e não a uma função. Para corrigir isso e fazer com que a célula funcione, precisamos usar a função print original do Python, acessando-a através de builtins.print. Vou corrigir o código para você.

Desculpe, não entendi o "print foi acidentalmente sobrescrito".

Olá, Antônio! Como vai?

O uso do __builtins__.print que você mencionou é uma forma de acessar diretamente a função print que está embutida no Python. Normalmente, você não precisa usar __builtins__ para chamar a função print, pois ela já está disponível no escopo global do Python.

O que pode ter acontecido é que, por algum motivo, a função print foi sobrescrita ou redefinida no ambiente em que você estava trabalhando. Ou seja, em algum momento do notebook, você criou um código que faça algo do tipo:

# Sobrescrevendo a função print sem querer
print = "Hello" # agora 'print' é uma string

# Tentando usar print como função
print("Olá, mundo!") # vai dar erro

Para corrigir esse problema, você deve deletar o código em que o print é sobrescrito e reiniciar a sessão do ambiente de execução no Colab. Ou... simplesmente criar um novo notebook e realizar esse desafio nele, você vai observar que o código funcionará normalmente.

Espero ter ajudado e fico à disposição se precisar.

Abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado