P. Bonomo Postado 15 horas atrás Compartilhar Postado 15 horas atrás Alguém me ajuda. Tenho um arquivo .py, já configurei o ambiente virtual e instalei o pyinstaller, mas dá um erro toda vez, este: C:\Users\Pedro\Documents\Pedro\teste-programacao\JogoPython\.venv\Scripts\python.exe: No module named pyinstaller 1 Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
Ryan Zimerman Leite Postado 12 horas atrás Compartilhar Postado 12 horas atrás @P. Bonomo O erro que está dando é que você não tem o pyinstaller, manda seu código aqui, mas você pode tentar utilizar o auto-py-to-exe 1 Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
isrnick Postado 10 horas atrás Compartilhar Postado 10 horas atrás Você pode ter instalado o pyinstaller no Python do computador, mas não no Python do ambiente virtual. Os pacotes instalados em um não fazem parte do outro. O objetivo de ter um ambiente virtual é justamente criar um ambiente Python onde apenas os pacotes nas versões específicas que foram usados no projeto estão instalados. Pois versões diferentes de um pacote podem alterar funcionalidades que fariam seu código não se comportar do modo que espera ou até não funcionar mais. E isso também facilita fazer o controle das dependências do seu projeto, pois não terá um monte de pacotes que não tem nada haver com o projeto instalados no mesmo ambiente. Então você precisa instalar os pacotes necessários para o projeto no Python do ambiente virtual, incluindo o pyinstaller. 1 Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
bonomo Postado 6 horas atrás Compartilhar Postado 6 horas atrás (editado) 4 horas atrás, isrnick disse: Você pode ter instalado o pyinstaller no Python do computador, mas não no Python do ambiente virtual. Os pacotes instalados em um não fazem parte do outro. O objetivo de ter um ambiente virtual é justamente criar um ambiente Python onde apenas os pacotes nas versões específicas que foram usados no projeto estão instalados. Pois versões diferentes de um pacote podem alterar funcionalidades que fariam seu código não se comportar do modo que espera ou até não funcionar mais. E isso também facilita fazer o controle das dependências do seu projeto, pois não terá um monte de pacotes que não tem nada haver com o projeto instalados no mesmo ambiente. Então você precisa instalar os pacotes necessários para o projeto no Python do ambiente virtual, incluindo o pyinstaller. 6 horas atrás, Ryan Zimerman Leite disse: @P. Bonomo O erro que está dando é que você não tem o pyinstaller, manda seu código aqui, mas você pode tentar utilizar o auto-py-to-exe @Ryan Zimerman Leite @isrnick vou tentar amanhã a hora que chegar em casa e aviso vocês, vou mandar o código aqui: import turtle # Configuração da janela tela = turtle.Screen() tela.title("Teste do jogo") tela.bgcolor("black") tela.setup(width=800, height=600) tela.tracer(0) # Pontuação pontuacao_a = 0 pontuacao_b = 0 # Jogador A jogador_a = turtle.Turtle() jogador_a.speed(5) jogador_a.shape("square") jogador_a.color("white") jogador_a.shapesize(stretch_wid=6, stretch_len=1) jogador_a.penup() jogador_a.goto(-350, 0) # Jogador B jogador_b = turtle.Turtle() jogador_b.speed(5) jogador_b.shape("square") jogador_b.color("white") jogador_b.shapesize(stretch_wid=6, stretch_len=1) jogador_b.penup() jogador_b.goto(350, 0) # Bola bola = turtle.Turtle() bola.speed(60) bola.shape("square") bola.color("white") bola.penup() bola.goto(0, 0) bola.dx = 0.2 bola.dy = -0.2 # Placar placar = turtle.Turtle() placar.speed(0) placar.color("white") placar.penup() placar.hideturtle() placar.goto(0, 260) placar.write("Jogador A: 0 Jogador B: 0", align="center", font=("Courier", 24, "normal")) # Funções def jogador_a_sobe(): y = jogador_a.ycor() y += 30 jogador_a.sety(y) def jogador_a_desce(): y = jogador_a.ycor() y -= 30 jogador_a.sety(y) def jogador_b_sobe(): y = jogador_b.ycor() y += 30 jogador_b.sety(y) def jogador_b_desce(): y = jogador_b.ycor() y -= 30 jogador_b.sety(y) # Teclado tela.listen() tela.onkeypress(jogador_a_sobe, "w") tela.onkeypress(jogador_a_desce, "s") tela.onkeypress(jogador_b_sobe, "Up") tela.onkeypress(jogador_b_desce, "Down") # Loop principal while True: tela.update() # Movendo a bola bola.setx(bola.xcor() + bola.dx) bola.sety(bola.ycor() + bola.dy) # Verificando colisão com a borda superior if bola.ycor() > 290: bola.sety(290) bola.dy *= -1 # Verificando colisão com a borda inferior if bola.ycor() < -290: bola.sety(-290) bola.dy *= -1 # Verificando colisão com a borda direita if bola.xcor() > 390: bola.goto(0, 0) bola.dx *= -1 pontuacao_a += 1 placar.clear() placar.write("Jogador A: {} Jogador B: {}".format(pontuacao_a, pontuacao_b), align="center", font=("Courier", 24, "normal")) # Verificando colisão com a borda esquerda if bola.xcor() < -390: bola.goto(0, 0) bola.dx *= -1 pontuacao_b += 1 placar.clear() placar.write("Jogador A: {} Jogador B: {}".format(pontuacao_a, pontuacao_b), align="center", font=("Courier", 24, "normal")) # Verificando colisão com os jogadores if (bola.dx > 0 and bola.xcor() > 340 and bola.xcor() < 350 and bola.ycor() < jogador_b.ycor() + 50 and bola.ycor() > jogador_b.ycor() - 50): bola.setx(340) bola.dx *= -1 if (bola.dx < 0 and bola.xcor() < -340 and bola.xcor() > -350 and bola.ycor() < jogador_a.ycor() + 50 and bola.ycor() > jogador_a.ycor() - 50): bola.setx(-340) bola.dx *= -1 # Fechando a janela tela.mainloop() Editado 6 horas atrás por Casa do Desenvolvedor Inserção do código na caixa de 'code'. 1 Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
Postagens Recomendadas
Crie uma conta ou entre para comentar 😀
Você precisa ser um membro para deixar um comentário.
Crie a sua conta
Participe da nossa comunidade, crie sua conta.
Criar minha conta agoraÉ bem rápido!
Entrar
Você já tem uma conta?
Entrar agoraFaça o login agora.