Quiz sur les pays du monde : trouvez les pays de continents, du monde, ou commencant par une certaine lettre !
# Ended 11.05.23 # BY ARMAND JAMET <3 afrique = ["Algerie","Angola","Benin","Botswana","Burkina Faso","Burundi","Cameroun","Cap-Vert","Republique centrafricaine", "Tchad","Comores","Republique Democratique du Congo","Djibouti","Egypte","Guinee equatoriale","Erythree","Eswatini", "Ethiopie","Gabon","Gambie","Ghana","Guinee","Guinee-Bissau","Cote d'Ivoire","Kenya","Lesotho","Liberia","Libye", "Madagascar","Malawi","Mali","Mauritanie","Maurice","Maroc","Mozambique","Namibie","Niger","Nigeria","Rwanda", "Sao Tome-et-Principe","Senegal","Seychelles","Sierra Leone","Somalie","Afrique du Sud","Soudan","Soudan du Sud", "Tanzanie","Togo","Tunisie","Ouganda","Zambie","Zimbabwe"] amerique_nord = ["Antarctique","Belize","Canada","Costa Rica","Cuba","Republique dominicaine","Salvador","Guatemala","Haiti","Honduras","Jamaique", "Mexique","Nicaragua","Panama","Etats-Unis"] amerique_sud = ["Argentine","Bolivie","Bresil","Chili","Colombie","Equateur","Guyana","Paraguay","Perou","Suriname","Uruguay","Venezuela"] asie = ["Afghanistan","Arabie saoudite","Armenie","Azerbaidjan","Bahrein","Bangladesh","Bhoutan","Brunei","Cambodge", "Chine","Chypre","Coree du Nord","Coree du Sud","Emirats arabes unis","Georgie","Inde","Indonesie","Iran","Iraq", "Israel","Japon","Jordanie","Kazakhstan","Kirghizistan","Koweit","Laos","Liban","Malaisie","Maldives","Mongolie", "Myanmar","Nepal","Oman","Ouzbekistan","Pakistan","Palestine","Philippines","Qatar","Russie","Singapour", "Sri Lanka","Syrie","Tadjikistan","Taiwan","Thailande","Timor oriental","Turkmenistan","Turquie","Vietnam","Yemen"] europe = ["Albanie","Allemagne","Andorre","Autriche","Bielorussie","Belgique","Bosnie-Herzegovine","Bulgarie","Croatie", "Chypre","Republique tcheque","Danemark","Estonie","Finlande","France","Georgie","Grece","Hongrie","Islande", "Irlande","Italie","Kosovo","Lettonie","Liechtenstein","Lituanie","Luxembourg","Macedoine du Nord","Malte", "Moldavie","Monaco","Montenegro","Pays-Bas","Norvege","Pologne","Portugal","Roumanie","Russie","Saint-Marin", "Serbie","Slovaquie","Slovenie","Espagne","Suede","Suisse","Ukraine","Royaume-Uni","Vatican"] oceanie = ["Australie","Fidji","Kiribati","Marshall","Micronesie","Nauru","Nouvelle-Zelande","Palaos","Papouasie-Nouvelle-Guinee", "Samoa","Iles Salomon","Tonga","Tuvalu","Vanuatu"] continent = [['Monde'],['Afrique',afrique],['Amerique du Nord',amerique_nord],['Amerique du Sud',amerique_sud],['Asie',asie],['Europe',europe],['Oceanie',oceanie]] from random import * correct=['Correct!','Bravo!','Gut!','Yes!','Exact!','Parfait :)'] wrong=['Faux','Faux...','Faux :(','Dommage','Falsch','Nein!'] def get_world(out=[]): for i in range(1,7):out+=continent[i][1] return out def help(name,i=2): hint=[] for t in name:hint+=[t if t in '- ' else '_'] hint[0]=list(name)[0] while not isEqual(input('Indice: '+''.join(hint)+'\n - '),name): hint=list(name)[:i]+hint[i:] i+=1 print(choice(wrong)) if i==len(name)//2+3:print('Le pays a trouver etait',name);input();play() elif i==len(name)//2+2:print(' Attention! Derniere tentative !') print(choice(correct)) return name def isIn(user, lands): # Recherche d'appartenance à la main faite pour ignorer la casse for land in lands: if isEqual(user, land): return True return False def isEqual(name, land): if land.upper()==name.upper(): return True elif '-' in land: if '-' in name:name=name.replace('-', ' ') if land.replace('-', ' ').upper()==name.upper(): return True return False def equivalent(user, lands): for land in lands: if isEqual(user, land): return land def guess(index,toDo): if isinstance(index,list):zone=index[0];lands=index[1] elif index==0:zone='Monde !';lands=get_world() else:zone=continent[index][0];lands=continent[index][1] end,maxLen=0,len(lands) print('\n Trouvez les pays en',zone,'\n (Tapez help pour avoir de l\'aide)') while len(lands): user=input('\n>>> ') if user=='':pass elif isIn(user, lands): lands.remove(equivalent(user, lands)) print(choice(correct)) if len(lands)==0:end=1 elif user=='help':print('Le pays est en',zone);lands.remove(help(choice(lands))) else:print(choice(wrong)) print(' Pays trouves: ',str(maxLen-len(lands)),'\n Pays restants: ',str(len(lands)),'\n Total: ',str(maxLen),sep='') input('\nFelicitations !\nVous avez trouve tous les pays d\''+zone+'\n(appuyer sur OK)') if len(index[0])==1:play(['X',]+toDo[1:]) elif index==0:play(toDo[0]+['X',]*7) else:toDo[index-1]='X';play(toDo) def play(toDo=[0,1,2,3,4,5,6,7]): print('\n',' '*12,'GEO GUESSER\n\nChoisissez : '+str(toDo[0])+' - Par lettre') for i in range(7):print(' '*12,toDo[i+1],'-',continent[i][0]) user='' while user=='': try:user=int(input('\n>>> ')) except:print('Rentrez un chiffre!') if user==0: letter=choice('ABCDEFGHIJKLMNOPQRSTUVZ') pack=[] for land in get_world(): if list(land)[0]==letter:pack+=[land] guess([letter,pack],toDo) else:guess(user-1,toDo) play()