Bom dia!
Não seria mais simples se fosse definido dentro dos if's o import forca/adivinhacao ao invés de utilizar o def()? Sou novo na área e achei confuso, apesar de entender o def().
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Bom dia!
Não seria mais simples se fosse definido dentro dos if's o import forca/adivinhacao ao invés de utilizar o def()? Sou novo na área e achei confuso, apesar de entender o def().
Bom dia! Caro Lucas, se entendi a sua pergunta você diria para fazer algo assim, certo?
def escolhe_jogo():
print("*********************************")
print("*******Escolha o seu jogo!*******")
print("*********************************")
print("(1) Forca (2) Adivinhação")
jogo = int(input("Qual jogo? "))
if (jogo == 1):
import forca
print("Jogando forca")
forca.jogar()
elif (jogo == 2):
import advinhacao
print("Jogando adivinhação")
advinhacao.jogar()Então, no python nós temos um Guia que nos mostra como as coisas devem ser feitas, ele é chamado de PEP 8.
No PEP 8 tem uma área que fala exatamente sobre isto, a importação de outras bibliotecas e arquivos. (https://peps.python.org/pep-0008/#imports)
Nela temos a convenção de que SEMPRE importamos os arquivos e bibliotecas no inicio do projeto, para manter uma certa organização.
Claro se você fizer do jeito acima, o código funcionará sem problemas, mas a maneira correta para se fazer é sempre importando o arquivo no começo.
Em projetos pequenos como esse é fácil saber onde está cada coisa e o que é cada coisa, porém com projetos maiores isso vai se tornando cada vez mais confuso, portanto seguimos essa conduta de importação.
Espero ter conseguido ajudar e bons estudos!