Carregando...

Funções

print("tea") não aparece no ecrã enquanto você escreve def. def guarda o nome pour e a linha recuada por baixo. Essa linha corre quando você escreve pour(). Os parênteses são a chamada.

Os parênteses depois de pour estão vazios, porque a função ainda não recebe um valor. Dois-pontos fecham a linha def. A linha seguinte tem quatro espaços de recuo e pertence a pour. Abaixo, pour() está escrito duas vezes. Cada linha é uma chamada.

Chamar pour duas vezes

python
def pour():
    print("tea")

pour()
pour()

O ecrã mostra tea e depois tea outra vez. O primeiro pour() executa o print recuado uma vez. O segundo pour() executa esse mesmo print mais uma vez. def não escreve nada sozinho. Um terceiro pour() escreveria um terceiro tea.

Os parênteses chamam

pour() executa a linha recuada. O nome pour, sem parênteses, não faz isso. tea fica de fora e o programa não para. Os dois-pontos depois dos parênteses são obrigatórios. A linha print precisa de quatro espaços. def escreve-se em minúsculas. Def é outra palavra, e o programa para ali.

Uma linha à mesma altura que def está fora da função. Python executa-a ao chegar lá. A chamada é um passo à parte.

Escrever ready e chamar uma vez

python
def pour():
    print("tea")

print("ready")
pour()

Primeiro sai ready, depois tea. print("ready") está à altura de def, por isso corre assim que Python chega a essa linha. pour() vem a seguir, e tea é a segunda linha. O print recuado continua à espera dessa chamada.

Tirar a chamada

Deixe def pour(): e deixe print("ready"). Apague a linha pour(). O ecrã mostra só ready. print("tea") continua guardado sob o nome, e ninguém o chama. Esse fim não é um erro.

Onde o programa para

Def com D maiúsculo não abre uma função. Sem os dois-pontos depois de pour(), o programa para. Se print("tea") começa na mesma coluna que def, não está dentro da função. A definição fica sem linha recuada e o programa para. O nome pour sozinho é o caso calado: o programa pode acabar e tea nunca é escrito.

pour escreve sempre a mesma palavra, tea. Não aceita um valor. A página seguinte dá um valor a uma função para ela trabalhar. Esta página não devolve um valor a partir de pour.

Leia o ecrã primeiro

  1. No primeiro programa, quantas vezes está pour() e quantas vezes sai tea?
  2. No segundo programa, qual é a primeira linha do ecrã?
  3. Você apaga pour() e deixa print("ready"). O que fica?
  4. Você escreve pour sem parênteses. A linha recuada corre?

Uma leitura

def pour(): guarda o nome e o print("tea") recuado. Esse print corre só em pour(). Duas chamadas escrevem tea duas vezes. print("ready") está à altura de def, por isso o segundo programa escreve ready e depois tea. Sem a chamada, tea nunca é escrito.

🧠 Teste Seu Conhecimento

Pronto para Começar

Teste Seu Conhecimento

Desafie-se com este questionário interativo e veja o quão bem você entende o tópico

❓
6
Perguntas
🎯
70%
Para Passar
♾️
∞
Tempo
🔄
∞
Tentativas

📝 Instruções

  • Leia cada pergunta cuidadosamente
  • Selecione a melhor resposta para cada pergunta
  • Você pode refazer o quiz quantas vezes quiser
  • Seu progresso será mostrado no topo