OVH Cloud OVH Cloud

Unicode

6 réponses
Avatar
jean.moser
Bonjour ,
Ceci est un petit programme qui va me permettre de tester unicode:

from Tkinter import *
root =3DTk()
label=3DLabel( root,text =3D'B=E4njour')
label.pack()
root.mainloop()

J'obtiens , le message suivant( j'utilise IDLE)


Non ascii found yet no encoding
Add a line like:

-*-coding : cp 1252 -*-
Choose OK to save this file as cp 1252
Edit your general options to silence this warning

OK Edit my file


J'ai cliqu=E9 sur "Edit my file" de sorte que j'obienne, en premio=E8re
ligne , -*- coding : cp 1252-*- Mais le programme ne s'ex=E9cute pas.
J'ai essay=E9 aussi en rempla=E7ant 1252 par utf-8. Pas de succ=E8s non
plus.

Que faire )

Jean Moser

6 réponses

Avatar
Michel Claveau
Bonjour !

Chez moi, ça marche, comme ça :

# -*- coding: utf-8 -*-

from Tkinter import *
root=Tk()
label=Label(root,text=u'Bänjour')
label.pack()
root.mainloop()


(et, en enregistrant bien le script en UTF-8, hein !)


J'ai convertit 'Bänjour' en u'Bänjour' pour bien montrer que c'est
de l'unicode.

@+

MCI



--
@-salutations

Michel Claveau
Avatar
jean.moser
J'ai essayé avec u'Bänjour' et en n'oubliant pas d'écrire au début
# -*- utf-8 -*- mais ça ne marche pas.
Il y a quelque chose que je dois faire faux !

Merci et à bientôt.

Jean Moser


Bonjour !

Chez moi, ça marche, comme ça :

# -*- coding: utf-8 -*-

from Tkinter import *
root=Tk()
label=Label(root,text=u'Bänjour')
label.pack()
root.mainloop()


(et, en enregistrant bien le script en UTF-8, hein !)


J'ai convertit 'Bänjour' en u'Bänjour' pour bien montrer que c'e st
de l'unicode.

@+

MCI



--
@-salutations

Michel Claveau


Avatar
Sébastien Kirche
Le 3 septembre 2006 à 18:29, jean moser a formulé :

Il y a quelque chose que je dois faire faux !


Tu utilises quel éditeur et quel encodage lorsque tu sauves le script ?
C'est cet encodage qui doit être cohérent avec celui annoncé dans la
ligne -*- et aussi ton caractère 'ä'.

--
Sébastien Kirche

Avatar
Amaury Forgeot d'Arc
Bonjour,

J'ai cliqué sur "Edit my file" de sorte que j'obienne, en premioère
ligne , -*- coding : cp 1252-*- Mais le programme ne s'exécute pas.
J'ai essayé aussi en remplaçant 1252 par utf-8. Pas de succès non
plus.


Je ne sais pas si ton message copie exactement ce qu'il y a dans ton
fichier. Mais je pense qu'il faut écrire cp1252 en un seul mot.
Essaie avec la ligne suivante, qui marche chez moi (et attention aux
espaces) :

# -*- coding: cp1252 -*-

--
Amaury

Avatar
jean.moser
J'ai tout essayé notamment dans IDLE sous Option puis Configure puis
" Default Source Encoding" j'ai cliqué sur le bouton radio UTF-8. Mais
cela ne marche toujours pas.

Je vais peut-être abandonner IDLE ?

JM


Le 3 septembre 2006 à 18:29, jean moser a formulé :

Il y a quelque chose que je dois faire faux !


Tu utilises quel éditeur et quel encodage lorsque tu sauves le script ?
C'est cet encodage qui doit être cohérent avec celui annoncé dans la
ligne -*- et aussi ton caractère 'ä'.

--
Sébastien Kirche



Avatar
jean.moser
Bonjour à tous !

Compte tenu de toutes les réponses qui m'ont été fournies j'ai
finalement trouvé la solution. Voici exactement le code tel que je
l'ai écrit:

# -*-coding utf-8-*-
from Tkinter import*
root = Tk()
label = Label(root,text = 'Bänjour')
label.pack()
root.mainloop()
print 'Büfon'
print u'Büfon'
print 'pâle'
print u'pâle'

Büfon
Büfon
pâle
pâle

J'ai obtenu bien sûr auparavant, dans la fenêtre Tk, le mot Bänjour,
comme voulu par le programme.

Encore merci.





Bonjour !

Chez moi, ça marche, comme ça :

# -*- coding: utf-8 -*-

from Tkinter import *
root=Tk()
label=Label(root,text=u'Bänjour')
label.pack()
root.mainloop()


(et, en enregistrant bien le script en UTF-8, hein !)


J'ai convertit 'Bänjour' en u'Bänjour' pour bien montrer que c'e st
de l'unicode.

@+

MCI



--
@-salutations

Michel Claveau