[Wapt] erreur lor de l'ajout/suppression de raccourci contenat un accent

Hubert TOUVET htouvet at tranquil.it
Mon May 29 21:08:37 CEST 2017


les chaînes peuvent être :

  * des bytestrings (chaînes d'octets); En python2, on ne préfixe pas
    (en python 3, on préfixe avec un b). Le contenu de la chaîne a un
    encodage indéfini (ce peut être de l'iso8859-1, utf8, utf16, du
    binaire sans représentation ascii,  etc...). Seul le programmeur
    sait.. (parfois)
  * des chaines unicode. préfixées avec un "u". Dans ce cas l'"encodage"
    est connu de python. C'est une représentation interne en mémoire qui
    peut représenter tous les caractères connus.  Python sait donc le
    réendocder car il sait d'où il part.

Par ailleurs on peut indiquer à python de ne pas interpréter les \n \t 
\r \u \x  etc... qui sont une manière d'écrire des caractères non ascii.

  * des chaînes brutes (raw) en particulier celles contenant des \ :
    pour des chemins, ou pour les expression régulières. Dans ce cas
    préfixer avec un "r" pour indiquer à pyhon de ne pas interprêter \t
    ou \n comme une tabulation ou un retour à la ligne par exemple

Dans votre cas, vous écrivez une chaine de caractères dont vous voulez 
que Python connaisse l'encodage.
Le code source setup.py est stocké sur disque avec un encodage UTF8 
(c'est un encodage qui permet aussi de représenter tous les caractères, 
contrairement aux iso8859-xx) . et la chaîne Apogée sera stockée en 
mémoire sous une forme unicode après avoir été interprétée par python 
depuis le code source en UTF8.

|create_desktop_shortcut(u'Apogée','c:\\')||
||remove_desktop_shortcut(u'Apogée')|

Le problèle se pose quand in ne sait pas vraiment l'encodage de ce que 
l'on reçoit... par exmple en sortie d'une ligne de commande Windows... 
La seule façon est de tenter plusieurs décodage en partant du plus 
probable...

Le 29/05/2017 à 16:42, Phil Markham a écrit :
>
> bonjour,
>
>
> lorsque j'essai de rajouter ou en lever un raccourci avec wapt 
> contenant un accent j'ai ça :
>
> 'ascii' codec can't decode byte 0xc3 in position 4: ordinal not in 
> range(128) : faulty string is ''Apog\xc3\xa9e.lnk''
>
>
> la ligne en cause :
>
> remove_desktop_shortcut('Apogée')
>
>
> j'ai essayer avec un u un r devant .... ça ne fonctionne pas.
>
>
> j'abdique ! 😓
>
>
> OS : windows 10
>
>
>
> _______________________________________________
> WAPT mailing list
> WAPT at lists.tranquil.it
> http://lists.tranquil.it/listinfo/wapt

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.tranquil.it/pipermail/wapt/attachments/20170529/38333946/attachment.html>


More information about the WAPT mailing list