Bonjour,
Je cherche à afficher des caractères latin type 'é' 'è' 'à' sur les widgets.
Et bien sur si je fais juste (text= "àccént") dans le constructeur du widget, Tk m'affiche un joli carré
Comment puis-je faire s'il vous plait ?
Merci d'avance.
Bonjour,
Je cherche à afficher des caractères latin type 'é' 'è' 'à' sur les widgets.
Et bien sur si je fais juste (text= "àccént") dans le constructeur du widget, Tk m'affiche un joli carré
Comment puis-je faire s'il vous plait ?
Merci d'avance.
Le type par défaut du texte des widgets Tkinter est le type unicode alors je pense qu'il faudrait le préciser ainsi:
cela ne vaut que pour les version inférieur a python 3 car le type par défaut de ceux-çi est le type string alors qu'en version 3 le type par défaut est l'unicode, tu peut vérifier le type de ta variable avec la primitive type qui renvoie le type de l'objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part (text=u"àccént")
Bon python a toi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 a="texte de type string" type(a) <type 'str'> b=u"texte de type unicode" type(b) <type 'unicode'>
Pour faire tes armes:
Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
Et sois toujours bien armé avant de te lancer.
Le hasard ne sourit qu'aux gens préparés...
Site: Website programmation international (www.open-source-projects.net)
Site: Website imagerie 3D (www.3dreaming-imaging.net)
Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
FUN is HARD WORK !!!
Salut,
C'est vrai qu'on s'y perd facilement, entre le codage du script, de la sortie console et celui de la sortie graphique. Le petit snippet ci dessous peut aider. SUr la copie d'écran, l'éditeur est sciite, python est en version 2.7 et l'OS est un windows XP32
A+
Pfeuh
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #!/usr/bin/python # -*- coding: latin -*- import Tkinter root = Tkinter.Tk() words = ["azerty", u"azerty", u"héhé", "héhé"] for word in words: Tkinter.Label(root, text=word).grid() print type(word), try: print word except: print "<unprintable>" root.mainloop()
Puisque tu aborde le sujet pourrait tu me mettre sur la voie qui mène vers une technique permettant d'extraire tous les caractères présent dans l'encodage des claviers latins (ISO8859-15???).
Je n'ai pas encore essayer mais l'idée me titille depuis longtemps et je ne vois pas par oû commencer: utiliser encode() ?
ou :
en faite je sais pas ou commencer concrètement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 -#!!/usr/bin/python # -*- coding: latin -*- #et puis après je sais pas...
Si ta une idée sa serai sympa.
Puisque c'est le sujet...
Pour faire tes armes:
Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
Et sois toujours bien armé avant de te lancer.
Le hasard ne sourit qu'aux gens préparés...
Site: Website programmation international (www.open-source-projects.net)
Site: Website imagerie 3D (www.3dreaming-imaging.net)
Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
FUN is HARD WORK !!!
En fait, je suis comme toi, des problèmes d'encodage, j'en ai aussi. Ce que j'ai retenu, c'est que
1- Si tu mets
au début de ton source, tous les caractères latins présents dans ton source seront correctement interprétés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 -#!!/usr/bin/python # -*- coding: latin -*-
2- A partir du moment où tu es en graphique (sous Tkinter par exemple), tout est en unicode, donc plus de problème.
Les avis plus pointus, tant pour Luke que pour moi sont les bienvenus!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager