Bonjour à tous,
J'ai créé une simple classe qui génère des codes d'activation aléatoirement. J'essaye de la compléter un peu et je bloque totalement là. Voici mon code pour le moment :
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 | #!/usr/bin/python3 # -*- coding: utf-8 -*- import random, string class Generator: def __init__(self, separator = '-'): self.keys = [] self.separator = separator def generate(self, length, number): chars = string.letters + string.digits for i in range(number): self.keys.append("".join([random.choice(chars) for j in range(length)])) def separate(self, each = 4): for key in self.keys: print(key) # Je ne vois pas trop comment faire ici... if __name__ == '__main__': gen = Generator() gen.generate(15, 200) gen.separate() filekeys=file("activation_codes.txt",'w') for key in gen.keys: filekeys.write(str(key)+'\n') filekeys.close() |
Peut être que ma POO n'est pas parfaite (sûrement même) si c'est le cas n'hésitez pas à me corriger. J'hésite notamment sur le fait que separator
soit un attribut de la classe ou un argument de fonction. Donc ma méthode separate()
doit ajouter un caractère dans mes codes tous les X caractères.
Voici à quoi ressemble un code : fR2Haf5MbAfAdBAqy6rfMaCfU
et je voudrais obtenir quelque chose comme ça : fR2H-af5M-bAfA-dBAq-y6rf-MaCf-U
J'avoue que je ne vois absolument pas comment coder ça sachant que la longueur des codes est variable et que l'emplacement du séparateur aussi.. Rien n'est fixe !
Merci de votre aide et bonne journée.