Solucionado (ver solução)
Solucionado
(ver solução)
9
respostas

Imports não funciona

Ao usar import, ele não identifica o módulo como o professor fez no video

Consigo executar os arquivos adivinhacao.py e forca.py separadamente, mas em jogos.py o python não consegue importar

import forca
import adivinhacao

print("*******************")
print("Escolha o seu jogo!")
print("*******************")

print("(1) Forca (2) Adivinhação")

jogo = int(input("Qual jogo? "))

if(jogo == 1):
    print("Jogando Forca")
    forca.jogar_forca()
elif(jogo == 2):
    print("Jogando Adivinhação")
    adivinhacao.jogar_adivinhacao()

Ao executar, exibe essa mensagem de erro:

C:\Users\laura\PycharmProjects\jogos\venv\Scripts\python.exe C:/Users/laura/PycharmProjects/jogos/jogos
Traceback (most recent call last):
  File "C:\Users\laura\PycharmProjects\jogos\jogos", line 1, in <module>
    import forca
ModuleNotFoundError: No module named 'forca'

Process finished with exit code 1

Sim, os arquivos estão na mesma pasta/diretório

Problema semelhante aconteceu com outro aluno no tópico https://cursos.alura.com.br/forum/topico-imports-nao-funcionando-67559 Mas não consegui resolver

9 respostas

Os nomes dos arquivos dos jogos estão adivinhação e forca ?

Os nomes dos arquivos dos jogos estão adivinhação e forca ? Sim!

Fiz um teste com 3 arquivos em outro computador:

#arquivo a.py executa normalmente
print("executando a")
#arquivo b.py executa normalmente
print("executando b")
#arquivo principal.py não consegue importar os módulos a.py e b.py
import a
import b

Ao executar principal.py, mesma resposta:

C:\Users\UFRN\PycharmProjects\pythonProject\venv\Scripts\python.exe C:/Users/UFRN/PycharmProjects/pythonProject/principal
Traceback (most recent call last):
  File "C:\Users\UFRN\PycharmProjects\pythonProject\principal", line 1, in <module>
    import a
ModuleNotFoundError: No module named 'a'

Process finished with exit code 1

Seguem os prints abaixo:

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

Será que tem alguma relação com o VENV? Talvez precise iniciar o ambiente virtual antes.

Fiz um teste no VS Code e funcionou aqui.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Tem vários tópicos no google sobre esse problema, nada me ajudou: https://towardsdatascience.com/how-to-fix-modulenotfounderror-and-importerror-248ce5b69b1c

Cheguei a tentar essa solução mas também não funcionou: https://www.geeksforgeeks.org/pythonpath-environment-variable-in-python/

Eu não consigo continuar o curso enquanto não resolver isso :(

Será que tem alguma relação com o VENV? Talvez precise iniciar o ambiente virtual antes.

Leandro, como faço isso? Quando eu instalo já vem essa pasta

Você tentou rodar sua aplicação pelo terminal (prompt)? Tenta fazer esse teste para ver se é algum problema no python ou no pycharm.

Tentei no terminal também sem sucesso =/

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

solução!

Consegui resolver...... por algum motivo, o PyCharm executa normalmente arquivos criados no ambiente dele, mas não reconhece ao importar. Eu renomeei todos os arquivos adicionando a extensão

a.py

b.py

principal.py

Aí o arquivo principal.py conseguiu importar a.py e b.py

Opa!

Que bom que deu certo agora!!

Excelente!!!