Jeu de carte Python - Python - Programmation
Marsh Posté le 08-04-2014 à 17:09:56
random.sample ça sert pas à mélanger une collection hein C'est random.shuffle qui fait ça Le principe de random.sample c'est de récupérer un sous-ensemble aléatoire de la collection de base.
Pour distribuer des cartes aux joueurs, tu peux garder un index dans ta séquence de carte et donner la carte courante au "index % players_count" (avec une indexation à 0), sauf naturellement que ça collera pas si le nombre de cartes n'est pas divisible par le nombre de joueurs, donc tu voudras probablement slicer le paquet pour ne garder qu'un nombre de cartes qui correspond.
Alternativement tu peux utiliser le recipe "grouper" d'itertools pour créer des groupes de "cards_per_player" cartes et assigner ça, ou tu peux zipper tes cartes (slicée) avec un cycle de tes joueurs pour définir l'association.
Marsh Posté le 07-04-2014 à 14:54:58
Bonjour, j'ai pour projet en informatique de crée un jeu de carte (Jeu du president ) j'ai réussi à crée le jeu de carte et à le mélanger mais je n'arrive pas à le distribué aux joueurs .
Pour que ma question soit clair je vais expliquer comment j'ai pensé le faire et mettre mon code apres .
Je demande donc en premier le nombre de joueurs qui peut être 4 5 ou 6
J'ai ensuite crée une liste Joueurs qui comporte elle meme 6 sous liste .
J'ai fait correspondre en suite chaque indice de la liste Joueurs a J1,J2,J3,J4 .... pour que ce soit plus simple ulterieurement .
Mon but serai de crée une boucle qui parcours le jeu de carte (melanger) carte par carte et qui met une carte dans le joueurs 1 la suivante dans le joueurs 2 et ainsi de suite jusqu'a la fin de la liste .
Pour cela il faut que ma boucle parcours le jeu de carte mais aussi la liste de joueurs en prenant aussi en compte le nombre de joueurs fournit au debut .
et je bloque completement je n'arrive pas a faire une double boucle et meme si cela existe .
J'ai pensé a une autre solution aussi, par exemple faire ensorte que la distribution ne ce fasse pas carte par carte mais directement le nombre de carte que le joueurs doit posseder ... mais encore là je ne voit pas trop comment faire .
Si vous pouvez m'aider ou me donner une piste merci