Ci-dessous, les différences entre deux révisions de la page.
| python:tarot [2020/01/05 15:32] – créée crust | python:tarot [2020/01/08 12:50] (Version actuelle) – crust | ||
|---|---|---|---|
| Ligne 9: | Ligne 9: | ||
| Pour bénéficier de la dernière version à jour, merci de vérifier sur le git : [[https:// | Pour bénéficier de la dernière version à jour, merci de vérifier sur le git : [[https:// | ||
| <code python> | <code python> | ||
| + | |||
| + | # | ||
| + | # -*- coding: utf-8 -*- | ||
| + | |||
| + | """ | ||
| + | |||
| + | __author__ = " | ||
| + | __copyright__ = " | ||
| + | __credits__ = " | ||
| + | __license__ = " | ||
| + | __version__ = " | ||
| + | __maintainer__ = " | ||
| + | __email__ = " | ||
| + | __status__ = " | ||
| + | |||
| + | |||
| + | |||
| + | liste_des_primes = [] | ||
| + | |||
| # Gestion du nombre de joueurs | # Gestion du nombre de joueurs | ||
| Ligne 17: | Ligne 36: | ||
| nb_joueurs = int(input(" | nb_joueurs = int(input(" | ||
| if 2 < nb_joueurs < 6: | if 2 < nb_joueurs < 6: | ||
| - | print(" | + | |
| break | break | ||
| except ValueError: | except ValueError: | ||
| Ligne 72: | Ligne 91: | ||
| # ===================================================================================================================== | # ===================================================================================================================== | ||
| - | def verificationContrat(nombre_de_points, | + | def verificationContrat(nombre_de_points, |
| # Contrat rempli ou non ? Calcul du bonus / malus | # Contrat rempli ou non ? Calcul du bonus / malus | ||
| - | if nombre_de_points >= nombre_d_oudlers: | + | if nombre_de_points >= pari_oudlers: |
| print(" | print(" | ||
| else: | else: | ||
| print(" | print(" | ||
| - | gain = nombre_de_points - nombre_d_oudlers | + | gain = nombre_de_points - pari_oudlers |
| print(" | print(" | ||
| Ligne 87: | Ligne 106: | ||
| # =================================================== | # =================================================== | ||
| - | def updateScore(gain, | + | def updateScore(gain, |
| # Mise à jour du score | # Mise à jour du score | ||
| # Ajout des scores | # Ajout des scores | ||
| + | print(dico_primes) | ||
| - | for nom in dictionnaire_joueurs: | + | |
| - | score = dictionnaire_joueurs[nom][-1] | + | if (gain > 0) : |
| + | | ||
| + | score = dico_joueurs[nom][-1] | ||
| - | | + | |
| - | score = score + (gain + dico_contrat[contrat_tour]) * (nb_joueurs - 1) | + | score = score + (gain + dico_contrat[contrat_tour]) * (nb_joueurs - 1) |
| - | else: | + | else: |
| - | score = score - (gain + dico_contrat[contrat_tour]) | + | score = score - (gain + dico_contrat[contrat_tour]) |
| - | | + | |
| - | print(dictionnaire_joueurs) | + | |
| + | else: | ||
| + | for nom in dico_joueurs: | ||
| + | score = dico_joueurs[nom][-1] | ||
| + | |||
| + | if nom == preneur: | ||
| + | score = score + (gain - dico_contrat[contrat_tour]) * (nb_joueurs - 1) | ||
| + | else: | ||
| + | score = score - (gain - dico_contrat[contrat_tour]) | ||
| + | dico_joueurs[nom].append(score) | ||
| + | |||
| + | # GESTION DES PRIMES | ||
| + | print(" | ||
| + | print(" | ||
| + | |||
| + | i = 0 | ||
| + | for nom in liste_beneficiaire_prime: | ||
| + | print(nom) | ||
| + | if nom[0] == liste_beneficiaire_prime[i][0]: | ||
| + | bonus = dico_primes[liste_beneficiaire_prime[i][1]] | ||
| + | print(nom, bonus) | ||
| + | else: | ||
| + | bonus = dico_primes[liste_beneficiaire_prime[i][1]] * -1 | ||
| + | print(nom, bonus) | ||
| + | i += 1 | ||
| + | | ||
| # Initialisation des paramètres du tour | # Initialisation des paramètres du tour | ||
| - | def parametrageTour(dictionnaire_joueurs, | + | def parametrageTour(): |
| - | dictionnaire_contrats, | + | |
| - | dictionnaire_oudlers, | + | |
| - | dictionnaire_primes, | + | |
| - | nombre_de_points_realises | + | |
| - | | + | |
| # Gestion du preneur | # Gestion du preneur | ||
| preneur = "" | preneur = "" | ||
| Ligne 174: | Ligne 217: | ||
| fin_des_primes = ' | fin_des_primes = ' | ||
| beneficiaire = '' | beneficiaire = '' | ||
| - | liste_des_primes = [] | + | |
| while fin_des_primes.lower() not in [' | while fin_des_primes.lower() not in [' | ||
| Ligne 198: | Ligne 241: | ||
| prime = input(" | prime = input(" | ||
| - | if prime in dictionnaire_primes: | + | if prime in dico_primes: |
| print(" | print(" | ||
| break | break | ||
| Ligne 204: | Ligne 247: | ||
| print(" | print(" | ||
| print(' | print(' | ||
| - | for nom, valeur in dictionnaire_primes.items(): | + | for nom, valeur in dico_primes.items(): |
| print(" | print(" | ||
| except ValueError: | except ValueError: | ||
| print(" | print(" | ||
| - | liste_des_primes.append({beneficiaire, | + | liste_des_primes.append((beneficiaire, |
| fin_des_primes = input(" | fin_des_primes = input(" | ||
| Ligne 224: | Ligne 267: | ||
| return nb_points, nb_oudlers, contrat_tour, | return nb_points, nb_oudlers, contrat_tour, | ||
| + | |||
| Ligne 232: | Ligne 276: | ||
| fin_du_jeu = '' | fin_du_jeu = '' | ||
| while fin_du_jeu.lower() != ' | while fin_du_jeu.lower() != ' | ||
| - | nb_points, nb_oudlers, contrat_tour, | + | nb_points, nb_oudlers, contrat_tour, |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| gain = verificationContrat(nb_points, | gain = verificationContrat(nb_points, | ||
| - | updateScore(gain, dico_joueurs, preneur, | + | updateScore(gain, |
| - | fin_du_jeu = input('Cesser la partie ? Saisir | + | fin_du_jeu = input("Cesser la partie ? Saisir |
| else: | else: | ||