Jeu de carte

Résolu
AnaisArnoo -  
 AnaisArnoo -
Bonjour,

Je souhaiterai programmer un jeu de carte avec une pioche, cependant je n’arrive pas à comprendre comment commencer ma fonction qui définit la pioche, je m’explique, lorsque la pioche est vide il faut mélanger le talon en veillant à laisse la dernière carte dans la liste talon et ajouter les restantes à celle de la liste pioche pour que la pioche soit de nouveau pleine

1 réponse

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonsoir, suggestion pour commencer ta fonction qui intervient quand la pioche est vide:
    - copier le talon dans la pioche
    - vider le talon
    - déplacer la dernière carte de la pioche vers le talon
    - mélanger la pioche
    - supprimer la dernière carte de la pioche
    0
    1. AnaisArnoo
       
      D’accord merci beaucoup mais comment faire pour déplacer la dernière carte je n’arrive pas à faire cela en Python
      0
    2. critou
       
      La dernière carte, c'est cartes[-1].

      >>> import random
      >>> talon = [chr(i) for i in range(65, 91)]
      >>> pioche = []
      >>> talon[:], pioche[:] = talon[-1], talon[0:-1]
      >>> random.shuffle(pioche)
      >>> talon
      ['Z']
      >>> pioche
      ['E', 'R', 'S', 'H', 'D', 'B', 'Y', 'O', 'A', 'K', 'X', 'U', 'C', 'P', 'I', 'T', 'M', 'G', 'Q', 'L', 'F', 'N', 'V', 'W', 'J']
      >>> 
      0
    3. AnaisArnoo
       
      Merci pour votre réponse et surtout votre algorithme !! Mais cependant pouvez vous me l’expliquer car je ne comprends pas les lettres à la fin et pourquoi le for est il de 65 a 91 ? Merci de du temps que vous m’accordez
      0
    4. critou
       
      Bonjour AnaisArnoo.

      65, 90, cela représente les nombres ordinaux de A et Z.
      D'où le chr() qui fait l'inverse de ord()
      Et donc tout ce qui se situe de 65 à 90, représente les lettres majuscules de A à Z.

      print('ord(A) ->', ord('A'), 'ord(Z) ->', ord('Z'))
      print('chr(65) ->', chr(65), ',', 'chr(90) ->', chr(90))


      Mais ces valeurs arbitraires n'étaient là que pour illustrer un exemple, ce n'est pas ce qui est important ici.
      0
    5. quent217 Messages postés 424 Statut Membre 348
       
      Pourquoi supprimer la dernière carte de la pioche ?
      0