Pages : 1
#1 Le 11/01/2010, à 00:47
- Spirzouf
[Résolu] utf-8 et python
Bonjour, j'ai commencé hier à découvrir le python avec le livre de Gérard Swinnen.
je fais les exos, et là, même si mon algorithme fonctionne, je me rends compte d'un petit blème :
# -*- coding: utf-8 -*-
# Exercice : Écrivez un script qui détermine si une
# chaîne contient ou non le caractère « e ».
mot="noémie"
longueur=len(mot)
print "le mot '",mot,"' comprend",longueur,"lettres"
a=0
trouve=0
while a<longueur and trouve==0:
print mot[a],
if mot[a]=="e":
trouve=1
print "\nla lettre 'e' a été trouvée en position",a+1
a=a+1
if trouve==0:
print "\nla lettre 'e' n'a pas été trouvée"
résultat :
le mot ' noémie ' comprend 7 lettres
n o � � m i e
la lettre 'e' a été trouvée en position 7
donc malgré la déclaration de l'utf-8 en début de script (ajout automatique de kate), ça bug...
j'ai testé latin-9 pour voir et c'est pareil.
Sauriez vous comment régler ceci ?
D'avance, merci pour votre aide.
Dernière modification par Spirzouf (Le 11/01/2010, à 16:12)
Hors ligne
#2 Le 11/01/2010, à 01:52
- Spirzouf
Re : [Résolu] utf-8 et python
je viens de trouver la solution ici : http://forum.ubuntu-fr.org/viewtopic.php?id=254145
en mettant
mot=u"noémie"
on obtient comme résultat :
le mot ' noémie ' comprend 6 lettres
n o é m i e
la lettre 'e' a été trouvée en position 6
Est-ce habituel de devoir utiliser ceci pour les chaines de caractère accentuées ? (rappel, j'ai moins de 24h d'expérience en python )
Hors ligne
#3 Le 11/01/2010, à 02:06
- Spirzouf
Re : [Résolu] utf-8 et python
à noter que si on entre en console le mot à vérifier, il faut mettre :
mot=unicode(raw_input("Entrez un mot où je chercherai la lettre 'e' : "), 'UTF-8')
on obtient :
Entrez un mot où je chercherai la lettre 'e' : noémie
le mot ' noémie ' comprend 6 lettres
n o é m i e
la lettre 'e' a été trouvée en position 6
sinon, ma question précédente est toujours d'actualité : est-ce habituel de devoir utiliser ceci pour les chaines de caractère accentuées ?
Hors ligne
#4 Le 11/01/2010, à 15:05
- k3c
Re : [Résolu] utf-8 et python
Pour moi la référence sur ce sujet est sur le site de sebsauvage
http://sebsauvage.net/python/charsets_et_encoding.html
Bonne lecture.
Archlinux sur Xiaomi Air 13
Hors ligne
#5 Le 11/01/2010, à 16:12
- Spirzouf
Re : [Résolu] utf-8 et python
merci beaucoup pour ce lien : encore ardu pour mois au 2ème jour de Python, mais ça va rentrer
Hors ligne
#6 Le 11/01/2010, à 20:36
- k3c
Re : [Résolu] utf-8 et python
Certaines personnes disent qu'avant de lire le livre de Swinnen, il vaut mieux commencer par "A byte of Python".
La version française est là
http://www.swaroopch.com/notes/Python_fr:Table_des_Matières
Archlinux sur Xiaomi Air 13
Hors ligne
#7 Le 11/01/2010, à 21:37
- Spirzouf
Re : [Résolu] utf-8 et python
oui, j'ai déjà présélectionné cette ressource mais j'avais commencé par Swinnen trouvant plus agréable de lire un PDF qu'une page web.
J'ai cependant vu plusieurs commentaires laissant entendre que le livre de Swinnen pouvait engendrer des mauvaises habitudes de programmation ; en quoi si tu as un avis là dessus ?
et autre question, j'ai installé python 2.6 et 3 pour comparer :
j'ai remarqué que print devenait print() et que les calculs sur les entiers pouvaient maintenant donner des réels. J'ai vu aussi que raw_input a remplacé input. Mais je n'ai pas trouvé de liste complète des différences... Tu aurais un lien ?
Hors ligne
#8 Le 12/01/2010, à 23:04
- k3c
Re : [Résolu] utf-8 et python
on peut créer un PDF sur le site de Swaroop, il faut faire "start collection" dans le menu de gauche, si tu n'y arrives pas, je m'en occuperai ce week-end.
Pas d'idée pour tes autres questions.
Archlinux sur Xiaomi Air 13
Hors ligne
#9 Le 13/01/2010, à 01:52
- Spirzouf
Re : [Résolu] utf-8 et python
Merci pour l'astuce !
Quelle galère pour finalement obtenir un PDF complet, mais c'est bon... Et la surprise en parcourant rapidement l'ouvrage, c'est actualisé pour Python 3 !
C'est sous CC By-Sa 3.0, donc je met en ligne la version française PDF ici : http://www.megaupload.com/?d=ALRACFAX
Hors ligne
#10 Le 13/01/2010, à 11:11
- k3c
Re : [Résolu] utf-8 et python
J'avais eu la flemme de générer le PDF, excellent !
Il faut diffuser largement cette info !
Archlinux sur Xiaomi Air 13
Hors ligne
#11 Le 13/01/2010, à 12:50
- Spirzouf
Re : [Résolu] utf-8 et python
hier soir, j'ai posté l'info sur l'épinglé concerné : http://forum.ubuntu-fr.org/viewtopic.php?id=352537
Hors ligne
Pages : 1