Bonsoir, je développe un code pour ma mère suivant un algorithme précis mais ça n'est pas l'important.
J'ai fini toutes les fonctions et maintenant je dois associer une chaine de caractères à un nombre(int) mais il y a problème, ça me renvoie à la fin un 'NoneType'.
Je bûche sur le problème depuis + d'une journée sans trouver de solution et l'origine du problème (je suis très débutant), merci à vous de m'aiguiller
Voici le code en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
def converter(letter): ##convertisseur lettre => nombre
    alphabet = {
    "a":1,"b":2,"c":3,"d":4,"e":5,"f":6,"g":7,"h":8,"i":9,"j":10,"k":11,"l":12,"m":13,"n":14,"o":15,"p":16,"q":17,"r":18,"s":19,"t":20,"u":21,"v":22,"w":23,"x":24,"y":25,"z":26
    }
    for i in alphabet:
        if letter == i:
            return(alphabet[i])
        else:
            pass
 
def pierre_nombre(nombre):  #Fonction qui passera le chiffre au nom
    alphabete = {
    "1":"Quartz Rose","2":"Japse rouge","3":"Calcédoine","4":"Jade","5":"Émeraude","6":"Grenat","7":"Citrine","8":"Obsidienne","9":"Aigue marine","10":"Rhodocrosite","11":"Cornaline","12":"Ambre","13":"Hématite","14":"Améthyste","15":"Malachite","16":"Opale","17":"Turquoise","18":"Pierre de lune","19":"Topaze","20":"Lapis Lazuli","21":"Tourmaline","22":"Cristal de roche","23":"Azurite","24":"Amazonite","25":"Oeil de tigre","26":"Pyrite","27":"Fluorine","28":"Perle","29":"Sodalite","30":"Quartz fumé","31":"Pierre de lune","32":"Mookaite","33":"Quartz tourmaline"
    }
    for j in alphabete:
        if nombre == j:
            return(alphabete[j])
        else:
            pass
 
 
def pierre_sommet(prenomuser1,prenomuser2,prenomuser3,nommere,nompere): #Fonction qui associe un nombre qui correspond à une certaine pierre (en fonction de l'algorithme de base)
        somme = converter(prenomuser1[len(prenomuser1)-1]) + converter(prenomuser2[len(prenomuser2)-1]) + converter(prenomuser3[len(prenomuser3)-1]) + converter(nompere[len(nompere)-1]) + converter(nommere[len(nommere)-1])
        if somme > 33:
            somme = [int(i) for i in str(somme)]
            #print('La pierre de sommet est : ')
            somme = sum(somme)
            #print(somme)
        else:
            print(somme)
 
        return somme
 
pierre_sommet("jules","yves","jean","akkeb","goyat")
 
def resultats(sommet): #Fonction qui est censé me donner le nom de la pierre
    print('La pierre de sommet est : ')
    resultat_sommet = pierre_nombre(sommet)
    print(type(resultat_sommet))
    print(resultat_sommet)
 
resultats(pierre_sommet("jules","yves","jean","akkeb","goyat"))
Voilà la réponse que me donne le script :
La pierre de sommet est :
<class 'NoneType'>
None