def cleDeControle(chars):
factor = [7, 3, 1]
result = 0
for index, char in enumerate(chars.upper()):
if char == '<':
char = 0
elif char >= 'A' and char <= 'Z':
char = ord(char) - 55
else:
char = int(char)
result += char * factor[index % 3]
return result % 10
print cleDeControle('050130') # Affiche « 8 »
ZGVmIGNsZURlQ29udHJvbGUoY2hhcnMpOgogICAgICAgIGZhY3RvciA9IFs3LCAzLCAxXQogICAgICAgIHJlc3VsdCA9IDAKIAogICAgICAgIGZvciBpbmRleCwgY2hhciBpbiBlbnVtZXJhdGUoY2hhcnMudXBwZXIoKSk6CiAgICAgICAgICAgICAgICBpZiBjaGFyID09ICc8JzoKICAgICAgICAgICAgICAgICAgICAgICAgY2hhciA9IDAKICAgICAgICAgICAgICAgIGVsaWYgY2hhciA+PSAnQScgYW5kIGNoYXIgPD0gJ1onOgogICAgICAgICAgICAgICAgICAgICAgICBjaGFyID0gb3JkKGNoYXIpIC0gNTUKICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgPSBpbnQoY2hhcikKIAogICAgICAgICAgICAgICAgcmVzdWx0ICs9IGNoYXIgKiBmYWN0b3JbaW5kZXggJSAzXQogCiAgICAgICAgcmV0dXJuIHJlc3VsdCAlIDEwCiAKcHJpbnQgY2xlRGVDb250cm9sZSgnMDUwMTMwJykgIyBBZmZpY2hlIMKrIDggwrs=