1
resposta

Não entendi o pq jogar() irá reclamar que a palavra_secreta não existe, apartir daí não consegui entender mais nada

Só que a função jogar() irá reclamar que a palavra_secreta não existe. O que queremos é que, ao executar a função carrega_palavra_secreta(), que ela retorne a palavra secreta para nós, assim poderemos guardá-la em uma variável:Poderia por favor explicar de outra maneira. Tb não entendi a lógica de criar uma variável nesse contexto.

1 resposta

A base desse tema caso queira se aprofundar é Variáveis Locais e Variáveis Globais.

Em resumo, se você criar uma variável (vamos chama-la de "teste") dentro do bloco de uma classe, função, loop, etc. Essa variável só existirá dentro desse bloco, quando a execução do programa sair desse bloco ela deixará de existir.

Exemplo:

teste1 = "Teste 1" 
#teste1 está sendo declarado no escopo principal do programa, pode ser acessado em qualquer local do código

def funcao(parametro):
    teste2 = parametro #teste2 está sendo declarado dentro do bloco de funcao()
    return teste2 #aqui acaba a função, a partir dessa linha a variavel teste2 não existirá mais


print(teste2) #tentamos imprimir o valor contigo em teste2, e dará erro pois essa variável não existe mais nesse ponto do código