J'aimerai que quelque'un fasse un peu de lumiere sur ce monde obscur de l'encodage des caratères.....
ex de code.
def ma fonction( self, repertoire ):
...
min = [ "Reçus", "Envoyés", "Poubelle" ]
self.__min = map( lambda str : os.path.join(repertoire, str), min )
Le truc bizarre le voila:
quand j'execute ce code au lancement de mon Appli wx, tout va bien....
par contre losrque je l'execute pendant que je parse un fichier XML
avec une classe héritée de xml.sax.ContentHandler, j'obtient une erreur
dans ntpath.py ( os.path.join ) :
path += "\\" + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 3: ordinal not in range(128)
sachant que b vaut "Reçus" ( g mit un print juste avant le += dans ntpath.py ) et que path vaut "C:\temp\UFR"
Derniere précision, je n'utilise pas d'unicode. Et en plus l'erreur
stipule que le code est > 128. D'apres mes souvenirs l'ASCII
(etendu, j'ai fait un setlocale...)va jusqu'a 256...
Autrte petite précision le code suivant provoque la meme erreur....
chaine = u"ç"
print chaine
Alors des idées? moi je sèche