Une liste en fonction du nombre de joueurs.

Résolu/Fermé
Anonymous - Modifié le 2 juin 2020 à 10:32
jee pee Messages postés 40464 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 22 novembre 2024 - 2 juin 2020 à 11:05
Bonjour à tous.
Je développe un petit programme en python que j'ai appelé la coupe de feu.
Le principe est simple, J'énonce les règles je demande combien il y a de joueurs, Tour à tour les joueurs tape leurs noms et à la fin, un nom sort au hasard.
Mais je n'arrive pas à adapter ma liste en fonction du nombre de joueurs. Je vous mets ici:
import random
import pygame
import pygame.mixer
import time

pygame.init()
 
pygame.mixer.music.load("coupe de feu.ogg")
pygame.mixer.music.play()

print("Bienvenue dans le jeu de la coupe de feu. "
      "Tour après tour, vous allez déposez votre nom dans la coupe de feu"
      " et elle en désignera un au hasard!")
time.sleep(6)

value = input("Combien de joueurs êtes-vous ?")
namelist = [value]
namelist.append(input("Comment s'appelle le 1er joueur ?"))  #Stored in namelist[0]
namelist.append(input("Comment s'appelle le 2ème joueur ?"))  #Stored in namelist[1]
namelist.append(input("Comment s'appelle le 3ème joueur ?"))  #Stored in namelist[2]
namelist.append(input("Comment s'appelle le 4ème joueur ?"))  #Stored in namelist[3]
namelist.append(input("Comment s'appelle le 5ème joueur ?"))  #Stored in namelist[4]

nameindex = random.randint(0, 5)
print('Bravo {}.Ton nom est sortie de la coupe de feu!'.format(namelist[nameindex]))
time.sleep(2)
pygame.mixer.music.stop()


Merci à tous ceux qui peuvent m'aider.

2 réponses

jee pee Messages postés 40464 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 22 novembre 2024 9 424
Modifié le 2 juin 2020 à 10:43
Bonjour,

Il te faut faire une boucle, comme
for i in range (0, value) 
pour saisir les noms

Tu pourrais ne pas demander le nombre de joueurs, mais faire une boucle de saisie des noms qui s’arrête quand le champ sur input est vide (juste validé par Entrée)

Attention à
random.randint(0, 5)
avec 5 joueurs dans le tableau, il faut varier de 0 à 4 (ou 0, value-1).

Cdlt

Un petit tuto là https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Au dessus de la zone d'édition de tes messages, il y a des icones pour les enrichissements du texte.
Celle qui a cet aspect <>▼ permet d'appliquer aux codes le format correspondant à sa nature.

1
jee pee Messages postés 40464 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 22 novembre 2024 9 424
Modifié le 2 juin 2020 à 11:05
Attention, quand tu écris
namelist = [value] 
tu attribues la valeur saisie à la variable, cette valeur va se retrouver après les append en position [0], pour initialiser la variable, juste
namelist = []  
.
0
Merci beaucoup, sujet passé en résolu
0