1
resposta

[Bug] jogo em python

ola, estou um projeto de um jogo e desenvolvi o código abaixo para poder criar uma lista de jogador, primeiro tem que definir o numero de jogadores, e um jogo feito para jogar com 3 ou mais jogadores, então criei um código para validar isso, se for selecionado 2 jogadores ou menos então vai aparecer uma mensagem e vai aparecer a opção para a pessoa digitar de novo o numero de jogadores e vai ficar assim ate a pessoa digitar 3 ou mais jogadores, porem o problema e quando digita o numero certo de jogadores ai ele sempre pergunta uma segunda vez, exemplo o sistema pergunta qual o numero de jogadores ai eu digito 3 ai ele pergunta de novo qual o numero de jogadores ai eu digito 3 de novo, somente após digitar pela segunda vez que ele vai reproduzir o resto do código ai isso fica chato ter que digitar duas vezes sempre, poderia me dizer por que isso esta acontecendo e como resolvo.

codigo:

def jogar():

numero_de_participantes()
criando_lista_de_jogadores()

def numero_de_participantes():

numero_de_jogadores = int(input("qual o numero de jogadores? "))

if(numero_de_jogadores < 3):
    print("selecione 3 ou mais jogadores")
    numero_de_participantes()
return numero_de_jogadores

def criando_lista_de_jogadores():

jogadores = []

for jogador in range(1, numero_de_participantes() +1):
    nome_do_jogador = input("qual o nome do jogador {}? ".format(jogador))
    jogadores.append(nome_do_jogador)
1 resposta

Olá,

uma solução seria utilizar o while, e como condição jogadores < 3, exemplo:

players = 0

while players < 3:
    players = int(input('Entre com o nro. de jogadores (>= 3): '))
    print('Número de jogadores insuficiente') if (players < 3) else None

print(f'Quantidade de jogadores informada: {players}')

Até +

Resolveu? Por favor, marcar como solucionado ✔. Bons estudos! ⌣