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

Não consigo importar os 2 jogos

Olá tudo bem?

Estou tentando importar os dois jogos (adivinhação e forca) do meu pycharm para a pasta jogos como o prof ensina no vídeo. Porém sempre aparece o jogo de adivinhação e mais nada. O import adivinhacao e import forca, não funcionam. Apenas aparece o jogo de adivinhação mesmo não estando dentro da pasta do jogo.

Quando tento abrir no terminal aparece esse erro :

O arquivo C:\Users\vanes\PycharmProjects\jogos\Scripts\activate.ps1 não pode ser carregado. O arquivo C:\Users\vanes\PycharmProjects\jogos\Scripts\activate.ps1 não está assinado 
digitalmente. Não é possível executar este script no sistema atual. Para obter mais informações sobre como executar scripts e definir a política de execução, consulte 
about_Execution_Policies at https://go.microsoft.com/fwlink/?LinkID=135170.
    + CategoryInfo          : ErrodeSegurança: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : UnauthorizedAccess

Mas os jogos funcionam sozinhos, mas dentro do jogos.py o import não traz nada do jogos.py nem do forca.py.

Podem me ajudar? Já atualizei o PowerShell

Meu código é esse :

import adivinhacao
import froca

print("Bem vindo, escolha seu jogo!")

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

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

if(jogo == 1):
    print("Jogando Adivinhação.")
elif(jogo == 2):
    print("Jogando Forca.")
3 respostas
solução!

Olá matheus, Bom dia!

Acredito que seu erro esteja na importação, talvez você quisesse digitar "import forca" ao invés de "import froca".

Olá, você disse:

"O import adivinhacao e import forca, não funcionam. Apenas aparece o jogo de adivinhação mesmo não estando dentro da pasta do jogo."

Ainda no tópico 08 (organizando melhor o nosso código), nos ensinaram que: "quando importamos um módulo em Python, a primeira coisa que a linguagem fará é executar o conteúdo de cada módulo importado." (Isso se encontra na parte 8.4)

Acredito que por isso está acontecendo o que disse.

Chegou a terminar todo o tópico 08? Lá o professor mostra como resolver a situação (definindo uma função no arquivo do jogo de adivinhação e utilizando "if(name=="main")).

(Caso eu tenho entendido errado a pergunta, me desculpe. )

opa, tudo bom? acredito que seu erro esteja no print abaixo do if você deve chamar a função forca.jogar() e adivinhacao.jogar() que foi a função definida para cada jogo. no caso ficaria assim:

import adivinhacao import froca

def escolher_jogo():

    print("Bem vindo, escolha seu jogo!")

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

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

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

    if(__name__ == "__main__"):
        escolher_jogo()