URL: https://linuxfr.org/users/linuxcode/journaux/rot13v2-en-python Title: ROT13v2 en Python Authors: alexissoft Date: 2004年12月11日T18:19:27+01:00 Tags: Score: 0 Voilà alors j'ai eu l'idée, rot13 marchant que sur les caractères, il fallait donc encrypter les caractères, alors très simple puisque 13+13=26 donc A + 26 = N + 26 (voilà comment marche rot13), il suffit de faire 1 + 5 = 6 + 5 (en gros hein, parce qu'ensuite on fout un modulo). Du coup ROT13v2 donne : EBG68i7 Alors voilà l'implémentation en python, version masterisée et remixée de [http://www.miranda.org/~jkominek/rot13/python/rot13.py(...)](http://www.miranda.org/~jkominek/rot13/python/rot13.py) -8<-------------------------------------------------------------------------------------- #!/usr/bin/python # -*- coding: iso-8859-15 -*- def rot13(chaine): result = "" for x in range(len(chaine)): byte = ord(chaine[x]) cap = (byte & 32) byte = (byte & (~cap)) if (chaine[x] == ' '): result = result + ' ' elif (byte >= ord('A')) and (byte <= ord('Z')): byte = ((byte - ord('A') + 13) % 26 + ord('A')) byte = (byte | cap) result = result + chr(byte) elif (byte >= 16) and (byte <= 25): byte = ((byte - 16 + 5) % 10 + 16) byte = (byte | cap) result = result + chr(byte) else: result = result + chr(byte | cap) return result print "ROT13 DECODER/ENCODER" print text = raw_input("Type your text : ") print "The result : " + rot13(text) -8<-------------------------------------------------------------------------------------- En espérant que les geeks aimeront :)

AltStyle によって変換されたページ (->オリジナル) /