Lorsque je mets des accents dans mes chaines de caractères, j'ai un warning généré par python. Normal.
J'aimerais supprimer ce warning mais je n'y arrive pas.
Je suis sous windows. J'utilise Eclipse 3.1 avec le plug-in PyDev.
Je mets le commentaire qui va bien au début de mon fichier pour dire que j'ai des caractères de type UTF-8. J'enregistre mon fichier au format UTF-8 (ou du moins je pense que c'est le cas). J'ai bien mes caractères accentués dans le fichier source mais à l'exécution j'ai 2 caractères bizarres à chaque lettre accentuée. Je suppose que ces deux caractères correspondent au code UTF-8 non "décodé". Ce qui est étrange c'est que dès que je mets le commentaire de type d'encodage au début du fichier, Eclipse sauvegarde automatiquement le fichier dans le nouvel encodage. Comme si Eclipse connaissait cette "instruction". Peut-être que c'est PyDev qui fait ça ?
Quelqu'un a t-il déjà eu ce genre problème ? Et éventuellement une solution ?
Je faisais référence à la phrase : "mais à l'exécution j'ai 2 caractères bizarres à chaque lettre accentuée", et non au reste du message.
Mea culpa, je n'avais pas précisé cet aspect.
@-salutations
Michel Claveau
bruno modulix
Do Re Mi chel La Si Do wrote:
Bonsoir !
Voilà l'exemple :
# -*- coding: utf-8 -*- a=u'éèëê' open('ess1.txt','wb').write(a.encode('utf-8')) #taille de ess1.txt : 8 octets open('ess2.txt','wb').write(a.encode('cp1252')) #taille de ess2.txt : 4 octets
la différence vient des caractères accentués (utf-8 est encodé sur un nombre variable de bytes)
# -*- coding: utf-8 -*- a=u'aaaa' open('ess3.txt','wb').write(a.encode('utf-8')) #taille de ess3.txt : 4 octets open('ess4.txt','wb').write(a.encode('cp1252')) #taille de ess4.txt : 4 octets
Comme il est assez compliqué, j'espère que tu arriveras à t'en dépêtrer, sans EPO...
je ne suis pas sûr que ce moi qui en ai le plus besoin...
Pour l'intempestif, je maintiens. La phrase : "Un protocole particulier (e.g. Microsoft conventions for .txt files) PEUT avoir besoin..." ne cite pas Windows,
Non non, pas du tout...
En fait je pense que tu as cru voir l'opportunité d'envoyer un petit coup de griffe à windows...
En fait, je pense que tu nous fais une crise de parano. Je n'ai pas pour habitude de troller sur ce sujet (trop facile, donc pas drôle !-)
-- bruno desthuilliers ruby -e "print ''.split('@').collect{|p| p.split('.').collect{|w| w.reverse}.join('.')}.join('@')"
Do Re Mi chel La Si Do wrote:
Bonsoir !
Voilà l'exemple :
# -*- coding: utf-8 -*-
a=u'éèëê'
open('ess1.txt','wb').write(a.encode('utf-8')) #taille de ess1.txt : 8
octets
open('ess2.txt','wb').write(a.encode('cp1252')) #taille de ess2.txt : 4
octets
la différence vient des caractères accentués (utf-8 est encodé sur un
nombre variable de bytes)
# -*- coding: utf-8 -*-
a=u'aaaa'
open('ess3.txt','wb').write(a.encode('utf-8')) #taille de ess3.txt : 4
octets
open('ess4.txt','wb').write(a.encode('cp1252')) #taille de ess4.txt : 4
octets
Comme il est assez compliqué, j'espère que tu arriveras à t'en dépêtrer,
sans EPO...
je ne suis pas sûr que ce moi qui en ai le plus besoin...
Pour l'intempestif, je maintiens. La phrase : "Un protocole particulier
(e.g. Microsoft conventions for .txt files) PEUT avoir besoin..."
ne cite pas Windows,
Non non, pas du tout...
En fait je pense que tu as cru voir l'opportunité d'envoyer un petit coup de
griffe à windows...
En fait, je pense que tu nous fais une crise de parano. Je n'ai pas pour
habitude de troller sur ce sujet (trop facile, donc pas drôle !-)
--
bruno desthuilliers
ruby -e "print 'onurb@xiludom.gro'.split('@').collect{|p|
p.split('.').collect{|w| w.reverse}.join('.')}.join('@')"
# -*- coding: utf-8 -*- a=u'éèëê' open('ess1.txt','wb').write(a.encode('utf-8')) #taille de ess1.txt : 8 octets open('ess2.txt','wb').write(a.encode('cp1252')) #taille de ess2.txt : 4 octets
la différence vient des caractères accentués (utf-8 est encodé sur un nombre variable de bytes)
# -*- coding: utf-8 -*- a=u'aaaa' open('ess3.txt','wb').write(a.encode('utf-8')) #taille de ess3.txt : 4 octets open('ess4.txt','wb').write(a.encode('cp1252')) #taille de ess4.txt : 4 octets
Comme il est assez compliqué, j'espère que tu arriveras à t'en dépêtrer, sans EPO...
je ne suis pas sûr que ce moi qui en ai le plus besoin...
Pour l'intempestif, je maintiens. La phrase : "Un protocole particulier (e.g. Microsoft conventions for .txt files) PEUT avoir besoin..." ne cite pas Windows,
Non non, pas du tout...
En fait je pense que tu as cru voir l'opportunité d'envoyer un petit coup de griffe à windows...
En fait, je pense que tu nous fais une crise de parano. Je n'ai pas pour habitude de troller sur ce sujet (trop facile, donc pas drôle !-)
-- bruno desthuilliers ruby -e "print ''.split('@').collect{|p| p.split('.').collect{|w| w.reverse}.join('.')}.join('@')"