Olá Karine, tudo bem com você?
Quando estamos importando módulos no Python existe uma recomendação pela PEP 8 (Guia de Estilo de Código - Python Enhancement Proposals) de que os import
devem ficar no topo do nosso arquivo. Exemplo:
import forca
import adivinhacao
Essa PEP foi criada para que exista uma padronização dos códigos em Python, com o objetivo de facilitar a leitura e entendimento por parte de outros programadores.
Sabendo dessa informação, vamos ao exemplo proposto pelo professor. Quando ele colocou import forca
e import adivinhacao
no topo do arquivo conforme o recomendado pela PEP 8, os jogos iniciaram antes mesmo do jogador escolher um jogo. Esse erro acontece por ele não ter implementado o uso de funções, assim, sempre que o módulo é importado o Python irá ler todo o código daquele arquivo, o que faz com que o que não está dentro de uma função seja executado.
No seu exemplo, está acontecendo algo semelhante, mas ao fazer o import
ao longo do código e não no topo impede de certa forma que o jogo inicie, assim o jogo irá iniciar apenas quando o usuário informar 1 ou 2.
Da forma que foi colocado em seu código não é uma boa prática de programação, o ideal é que você importe o módulo e depois o execute com o uso de uma função. Conforme no exemplo abaixo:
import forca
import adivinhacao
jogo = int(input('Informe 1 para jogar forca ou 2 para jogar adivinhação: '))
if(jogo == 1):
print("Jogando forca")
forca.jogar()
elif(jogo == 2):
print("Jogando adivinhação")
adivinhacao.jogar()
Você pode acompanhar a seguinte aula, onde o professor irá mostrar como é feito essa implementação da função:
Caso queira saber um pouco mais sobre a PEP 8, a Alura possui um curso dedicado a esse tema:
Caso tenha dúvidas encontro-me à disposição.
Abraços e bons estudos.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!