1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
| from random import randint
from threading import Timer
#La variable qui te dit si tu peux continuer
GameContinue = True;
#Les points. Variable globale car on en a besoin plus haut
Points = 0 # J'ai mis GameContinue et Points en variable de base
def FinDuJeu():
#Définit GameContinue en global pour stopper la boucle d'en bas
global GameContinue
GameContinue = False
print('')
print('Le jeu est terminé! Vous terminez avec un score de {} point(s). Bravo!'.format(Points))
def demarrer(): #Tout ton programme dans la fonction demarrer avec en global GameContinue et points
global GameContinue, Points
database = []
#on ajoute une liste par catégorie
#INFO: Mettre tous les mots en minuscule.
database.append(['afghanistan', 'afrique du sud', 'albanie', 'algérie', 'allemagne', 'andorre', 'angola', 'arabie saoudite', 'argentine', 'arménie', 'austalie', 'autriche', 'azerbaïdjan',
'bahamas', 'bangladesh', 'belgique', 'benin', 'bermudes', 'biélorussie', 'birmanie', 'bolivie', 'bosnie-herzégovine', 'botwswana', 'brésil', 'bulgarie', 'burkina faso',
'cambodge', 'cameroun', 'canada', 'cap vert', 'centrafrique', 'chili', 'chine', 'chypre', 'colombie', 'congo', 'corée du nord', 'corée du sud', 'costa rica', 'croatie', 'cote d\'ivoire', 'cuba',
'danemark', 'djibouti', 'dominique','egypte', 'emirats arabes unis', 'equateur', 'espagne', 'estonie', 'etats-unis', 'ethiopie',
'france', 'finlande', 'gabon', 'gambie', 'géorgie', 'ghana', 'grèce', 'groenland', 'guatémala', 'guinée', 'guyana','haïti', 'honduras', 'hong kong', 'hongrie','inde', 'indonésie', 'irak', 'iran', 'irlande', 'islande', 'israël', 'italie',
'jamaïque', 'japon', 'jordanie','kazakhstan', 'kenya', 'kirghizstan', 'kiribati', 'kosovo', 'koweït', 'laos', 'lesotho', 'lettonie', 'liban', 'liberia', 'libye', 'liechtenstein', 'lituanie', 'luxembourg',
'macao', 'macédoine', 'madagascar', 'malaisie', 'malawi', 'maldives', 'mali', 'malte', 'maroc', 'mauritanie', 'mexique', 'micronésie', 'moldavie', 'monaco', 'mongolie', 'monténégro', 'mozambique',
'nambie', 'nauru', 'népal', 'nicaragua', 'niger', 'nigeria', 'norvège', 'nouvelle calédonie', 'nouvelle zélande','ouganda','ouzbekistan','pakistan', 'palau', 'palestine', 'panama', 'paraguay', 'pays-bas', 'pérou', 'philippines', 'pologne',
'porto rico', 'portugal', 'qatar', 'république tchèque', 'roumanie',
'royaume-uni', 'russie', 'rwanda',
'tadjikistan', 'taïwan', 'tanzanie', 'tchad', 'tchéquie', 'thailande', 'tibet', 'timer oriental', 'togo', 'tonga', 'trinité et tobago', 'tunisie', 'turkménistan','ukraine', 'urugay','vatican', 'vénézuéla', 'vietnam','rien','yémen','zambie', 'zimbabwe'])
database.append(['ail', 'arachide', 'amarante', 'artichaut', 'asperge', 'aubergine', 'asperge', 'avocat', 'bambou', 'bardanne', 'basilic', 'betterave', 'brocoli', 'calebasse', 'cardon', 'carotte', 'céleri', 'chou', 'chou de bruxelles', 'chou chinois', 'chou-fleur', 'christophine', 'ciboulette', 'citrouille',
'concombre', 'cornichon', 'courge', 'courgette', 'dattes', 'échalote', 'endive', 'épinard', 'fenouil', 'fève', 'flageolet', 'gingembre', 'rien', 'haricot', 'rien', 'rien', 'rien', 'laitue', 'lentille', 'mâche', 'menthe', 'maïs', 'magnoc', 'navet', 'oignon', 'ortie', 'oseille', 'patate douce',
'patate', 'pomme de terre', 'persil', 'petit pois', 'piment', 'poireau', 'pois chiche', 'poivron', 'potiron', 'potimarron', 'quinoa', 'rien', 'radis', 'rhubarbe', 'rutabaga', 'salsifis', 'soja', 'salade', 'tomate', 'topinanbour', 'rien', 'wasabi', 'rien', 'rien', 'rien', 'rien', 'rien'])
database.append(['abarth', 'ac','alfa romeo', 'alpine','aston martin','audi','austin healey','bentley','bmw','brabus','bugatti','cadillac','caterham','chevrolet','chrysler','citroen','dodge','rien','ferrari','fiat','ford','ford mustang','ford usa','rien','honda', 'hummer','hyundai','rien','jaguar','jeep',
'kia','lamborghini','lancia','land rover','lexus','lotus','maserati','mazda','mclaren','mini','mitsubishi','morgan','nissan','opel','peugeot','porsche','rien','renault','rolls-royce','saab','seat','subaru','suzuki','tesla','toyota','triumph','tvr','rien','volkswagen','volvo','rien','rien','rien','rien'])
#les lettres dans un array pour pouvoir en sélectionner une aléatoirement
array_lettres = list("ABCDEFGHIJKLMNOPQRSTUVWXYZ")
#Les listes de catégories
listes = ['Pays','Légumes','Marque de voiture']
list_type = 0
#Le timer
Time = Timer(60, FinDuJeu)
Time.start()
#boucle infinie, à changer avec le timer.
while GameContinue:
#on sélectionne la lettre aléatoirement...
lettre_debut = array_lettres[randint(0,25)]
#et la liste aussi
list_type = randint(0,len(listes)-1)
#On demande à l'utilisateur d'entrer un mot de la catégorie et de la bonne lettre
user_text = input('Entrez un mot de la catégorie "{}" commençant par {} : '.format(listes[list_type], lettre_debut))
#On vérifie si il y a bien un mot qui correspond à la lettre.
is_mot = False
for mot in database[list_type]:
if mot[:1].upper() == lettre_debut:
is_mot = True
break;
#Si le mot est dans la catégorie, et commence par la bonne lettre: OK, sinon, non.
if user_text.lower() in database[list_type] and user_text[:1].upper() == lettre_debut:
Points = Points+1
print('Le mot correspond. Bravo! Vous avez {} point(s).'.format(Points))
else:
if is_mot == False and user_text.upper() == 'RIEN':
Points = (Points+1)
print("Bien joué, il n'y a aucun mot correspondant.Vous avez {} point(s).".format(Points))
else:
print('Le mot ne correspond pas, essayez encore...');
print('Bienvenue au petit bac!')
print('Entrez un mot de la bonne catégorie avec la bonne lettre pour gagner! Vous avez une minute pour entrer le maximum de mots!');
print('Information: Si vous ne savez pas quoi mettre, mettez "rien". Si la catégorie ne comporte effectivement aucun mot commençant par la lettre demandée, cela vous comptera bon.');
go = input('Entrez du texte pour commencer le jeu et le timer : ') # création de l'input go pour préparer un if/else:
#Bien entendu, tu peux choisir une façon bien précise de lancer ton programme, comme ça si l'utilisateur ne rentre pas ce que tu veux, le jeu ne se lance pas (c'est pas utile mais ça garni ton input qui servait pas à grand chose ;)
if go == "":
demarrer()
else:
print("Le jeu n'a pas été lancé")
while FinDuJeu:
print("\n\nSouhaitez-vous relancer une partie (Y/N) ?")
reponse = input()
if reponse == "y" or reponse =="Y":
GameContinue = True
Points = 0 #Car sinon tu repars sur le nombre de point de la partie précédente
demarrer()
else:
print("Fin de la partie !")
FinDuJeu()
break |
Partager