AttributeError python

Fermé
Pamplemousse - 8 avril 2019 à 16:06
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 - 17 avril 2019 à 17:44
Bonjour,
voici mon programme:

# ne surtout pas commenter la ligne suivante
import secret



############################################################################## 
#
#           chiffrement par alphabet
#
##############################################################################  
  
def chiffrement_par_alphabet(message_clair,substitution):
    '''
    message_clair est une chaine en minuscule
    chaque lettre est remplacée par son correspondant dans substitution, une liste
    de 26 caractères
    ex : 'a' est remplacé par substitution[0]
    '''
    for k in range(len(message_clair)):
        for i in(message_clair):
            i=substitution[k]
            message_chiffre=message_clair
    return message_chiffre
        
        
    
    
    
def dechiffrement_par_alphabet(message_chiffre,substitution):
    '''
    fonction réciproque de chiffrement_par_alphabet
    '''
    for k in range(len(message_chiffre)):
        for i in (message_chiffre):
            i = substitution[k]
            message_clair = message_chiffre
    return message_clair

 
########################## interlude #########################################

# ne surtout pas commenter les deux lignes qui suivent
alpha = secret.alpha
MC1 = secret.MC1

# decommentez si vous voulez voir le message chiffre
print('============= avant déchiffrement ==================\n')    
print(MC1,'\n')

print('============= après déchiffrement ==================\n')    




print('====================================================\n')


je dois pouvoir lire la partie "interlude" mais j'ai ce message qui s'affiche:

  File "C:/Users/Ventricule/Documents/Lay/COURS/Info/DM2/DM2.py", line 67, in <module>
    alpha = secret.alpha

AttributeError: module 'secret' has no attribute 'alpha'


J'ai pourtant bien défini mon repertoire de travail..
Avez-vous une astuce ?

Merci d'avance ;-)

Configuration: Windows / Firefox 60.0

1 réponse

quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 346
8 avril 2019 à 18:31
Bonjour,
le message d'erreur me semble assez claire.
Quel est donc ce module secret ? Est-ce un module que vous avez créer ou l'avez vous téléchargé ? Pouvez-vous nous montrer le code si vous l'avez créer ou nous donner le lien du projet si vous l'avez téléchargé ?
J'ai bien trouvé ce projet qui semble pouvoir être installé avec pip : https://github.com/futurice/secret
mais je n'y ai trouvé aucune référence à l'attribut alpha et il ne semble même pas être déstiné à être utilisé dans un code Python.
0
Bonjour quent217 !
J'ai téléchargé le module (qui vient de mon prof) dont voici le code :

import sys
major = sys.version_info[0]
minor = sys.version_info[1]
if minor == 3: from secret_33 import *
if minor == 4: from secret_34 import *
if minor == 5: from secret_35 import *
if minor == 6: from secret_36 import *


A vrai dire, je ne comprend pas trop ce qui ce passe avec ces script "secret". Je sais juste qu'ils me permettent de tester mes programmes pour (dé)chiffrer un message. Je ne dois normalement pas trop faire attention à ce script, ca devrait marcher sans que j'y fasse gaffe mais...c'est pas le cas !
Les fichiers "secret_33" etc. ont pour extension ".pyc" qui m'est totalement inconnue.

Merci beaucoup pour ton investissement, ca fait plaisir :)
0
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 346 > Pamplemousse
9 avril 2019 à 15:13
Les fichiers avec .pyc sont des programmes python compilés.
Je vais avoir du mal à t'aider si je ne peux pas regarder comment fonctionnent ces modules.
D'où est-ce que vient la ligne
alpha = secret.alpha
? Est-ce dans un fichier d'exemple donné par ton prof ? As-tu une documentation pour utiliser ce module ?
Sinon le plus simple reste sans doute d'aller demandé directement à ton professeur comment l'utiliser.
0
Pamplemousse
15 avril 2019 à 13:52
Bonjour !
Je ne sais pas du tout à quoi correspond la ligne
alpha = secret.alpha
...
En plus de ne rien avoir pour utiliser le module, mon prof me dit de me débrouiller !
Je vais alors fouiner de mon côté :-) Merci en tout cas
0
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 346
16 avril 2019 à 22:18
Pourquoi as-tu écris cette ligne
alpha = secret.alpha
?
0
Pamplemousse
17 avril 2019 à 17:05
Elle était déjà écrite par mon prof avant que je télécharge le script (que je dois compléter en fait)
0