• # A little bit more pythonic version

    Posté par . En réponse au journal ROT13v2 en Python. Évalué à 9.

    Il me semble...
    def rot13_v2_1(c):
     C = c.upper()
     d = ord(c)-ord(C)
     if 'A' <= C <= 'Z':
     return chr(((ord(C) - ord('A') + 13) % 26 + ord('A')) + d)
     elif '0'<=C <='9':
     return chr(((ord(C) - ord('0') + 5) % 10 + ord('0')))
     else:
     return c
    def rot13_v2(chaine):
     return "".join( map(rot13_v2_1, chaine) )
    if __name__=="__main__":
     print "ROT13 DECODER/ENCODER"
     print
     text = raw_input("Type your text : ")
     print "The result : " + rot13_v2(text)