La conversion de caractère de type int, et vice-versa en Python

J'ai une app externe qui ajoute la longueur du paquet au début des données. Quelque chose comme le code suivant:

x = "ABCDE"
x_len = len(x)
y = "GHIJK"
y_len = len(y)
test_string = chr(x_len) + x + chr(y_len) + y
#TODO:perform base64 encoding

Dans le côté client du code que j'ai besoin d'être en mesure d'extraire x_len et y_len et lire x et y accrodingly.

#TODO:perform base64 decoding
x_len = int(test_string[0])
x = test_string[:x_len]

J'obtiens l'erreur suivante:
ValueError: invalid littéral pour int() avec la base 10: '\x05'

Je suppose que l'argument de type int est en hexadécimal, donc je probbaly besoin de faire un peu de décodage avant de passer à l'int. Quelqu'un peut-il me donner un pointeur de fonction à utiliser à partir de décoder et s'il existe un moyen plus facile d'accomplir cette?

OriginalL'auteur as3rdaccount | 2014-06-02