A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
@-salutations
Michel Claveau
Almaleh
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner... Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print fait tourner le programme normalement, sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
Francois
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print fait
tourner le programme normalement, sans l'instruction print, ca bug
(j'utilise les caractères accentués dans un dictionnaire, et mis dans
sitecustomize.py latin-1).
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner... Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print fait tourner le programme normalement, sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
Francois
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
Almaleh
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner... Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print (meme vide !!) fait tourner le programme normalement ; sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print (meme vide
!!) fait tourner le programme normalement ; sans l'instruction print,
ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis
dans sitecustomize.py latin-1).
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner... Dest est un fichier (puisque méthode .write).
Mais le probleme n'est pas celui la : une instruction print (meme vide !!) fait tourner le programme normalement ; sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
Hervé Cauwelier
Bonjour,
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
Il semble pourtant qu'on ait besoin d'un extrait plus complet. Notamment la nature des variables utilisées et des exemples de ce qu'elles contiennent.
var1=""%s","%s"rn" % (a,motrie)
Beaucoup plus lisible :
var1='"%s","%s"rn' % (a,motrie)
Tous les types de guillemets (quotes) sont équivalent en Python, à part les triples qui conservent les retours à la ligne.
dest.write(var1)
Ca me génère une erreur : KeyError: 'xeb'
Un traceback plus bavard aiderait aussi.
À vue de nez, ça peut être un problème de codage ou de déréférencement de variable.
-- Hervé Cauwelier http://www.oursours.net/
Bonjour,
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
Il semble pourtant qu'on ait besoin d'un extrait plus complet. Notamment
la nature des variables utilisées et des exemples de ce qu'elles
contiennent.
var1=""%s","%s"rn" % (a,motrie)
Beaucoup plus lisible :
var1='"%s","%s"rn' % (a,motrie)
Tous les types de guillemets (quotes) sont équivalent en Python, à part
les triples qui conservent les retours à la ligne.
dest.write(var1)
Ca me génère une erreur : KeyError: 'xeb'
Un traceback plus bavard aiderait aussi.
À vue de nez, ça peut être un problème de codage ou de déréférencement
de variable.
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
Il semble pourtant qu'on ait besoin d'un extrait plus complet. Notamment la nature des variables utilisées et des exemples de ce qu'elles contiennent.
var1=""%s","%s"rn" % (a,motrie)
Beaucoup plus lisible :
var1='"%s","%s"rn' % (a,motrie)
Tous les types de guillemets (quotes) sont équivalent en Python, à part les triples qui conservent les retours à la ligne.
dest.write(var1)
Ca me génère une erreur : KeyError: 'xeb'
Un traceback plus bavard aiderait aussi.
À vue de nez, ça peut être un problème de codage ou de déréférencement de variable.
-- Hervé Cauwelier http://www.oursours.net/
bruno modulix
Almaleh wrote:
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
Dest est un fichier (puisque méthode .write).
class Machin(object): def write(self, what): pass
dest = Machin() var1=""%s","%s"rn" % (a,motrie) dest.write(var1)
Bref, tout ce qui a une méthode write() n'est pas un fichier...
De même, on ne sait pas ce que sont a et motrie...
Mais le probleme n'est pas celui la : une instruction print (meme vide !!) fait tourner le programme normalement ; sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
Poste un traceback complet, ainsi que le code minimal nécessaire pour reproduire l'erreur.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Almaleh wrote:
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
Dest est un fichier (puisque méthode .write).
class Machin(object):
def write(self, what):
pass
dest = Machin()
var1=""%s","%s"rn" % (a,motrie)
dest.write(var1)
Bref, tout ce qui a une méthode write() n'est pas un fichier...
De même, on ne sait pas ce que sont a et motrie...
Mais le probleme n'est pas celui la : une instruction print (meme vide
!!) fait tourner le programme normalement ; sans l'instruction print, ca
bug (j'utilise les caractères accentués dans un dictionnaire, et mis
dans sitecustomize.py latin-1).
Poste un traceback complet, ainsi que le code minimal nécessaire pour
reproduire l'erreur.
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb@xiludom.gro'.split('@')])"
A défaut de savoir ce qu'est "dest" ça risque d'être dur de deviner...
Dest est un fichier (puisque méthode .write).
class Machin(object): def write(self, what): pass
dest = Machin() var1=""%s","%s"rn" % (a,motrie) dest.write(var1)
Bref, tout ce qui a une méthode write() n'est pas un fichier...
De même, on ne sait pas ce que sont a et motrie...
Mais le probleme n'est pas celui la : une instruction print (meme vide !!) fait tourner le programme normalement ; sans l'instruction print, ca bug (j'utilise les caractères accentués dans un dictionnaire, et mis dans sitecustomize.py latin-1).
Poste un traceback complet, ainsi que le code minimal nécessaire pour reproduire l'erreur.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
DarkPearl
Bonjour, très sincèrement, il est fortement improbable que l'erreur vienne d'un bug de Python. Maintenant, quand tu ajoutes un print dans ton prorgamme, il se peux que python modifie le type de ta variable implicitement. Donc a priori c'est qu'il y a dans ta variable var1 qui fait planter ton prog.
J'aimerai savoir ce que tu crois qu'il y a dans var1 et de quel type cette variable devrait être.
Cordialement Cédric
Bonjour, très sincèrement, il est fortement improbable que l'erreur
vienne d'un bug de Python.
Maintenant, quand tu ajoutes un print dans ton prorgamme, il se peux
que python modifie le type de ta variable implicitement. Donc a priori
c'est qu'il y a dans ta variable var1 qui fait planter ton prog.
J'aimerai savoir ce que tu crois qu'il y a dans var1 et de quel type
cette variable devrait être.
Bonjour, très sincèrement, il est fortement improbable que l'erreur vienne d'un bug de Python. Maintenant, quand tu ajoutes un print dans ton prorgamme, il se peux que python modifie le type de ta variable implicitement. Donc a priori c'est qu'il y a dans ta variable var1 qui fait planter ton prog.
J'aimerai savoir ce que tu crois qu'il y a dans var1 et de quel type cette variable devrait être.
Cordialement Cédric
Almaleh
Voici le code correspondant : Sans le print ecrirefich à la fin, ca coince ! Je n'ai pas d'idée Merci Francois
ps : mis sitecustomize.py latin-1. En entete du programme, Cp1252,latin11,cp850,utf-8 ca ne résoud rien.
fichiermots=open('mots_francais.txt','r') #fichier initial dest=open('dicosort.txt','w') #fichier retraité DICO={'-':'','ä':'a','é':'e','è':'e','ê':'e','ë':'e','à':'a','â':'a','ç':'c','î':'i','ï':'i','ü':'u','ù':'u','û':'u','ö':'o','ô':'o'} Le while L<123: DICO[chr(L)]=chr(L) L=L+1 while 1: motliste=[] motrie2='' x=0 a=fichiermots.readline() if len(a)==0: #tester si EOF break else: for car in a[:len(a)-1]: s=DICO[car] #remplacement accentuation par normal motliste.append(s) #constitution du mot motliste.sort() for let in motliste: motrie2=motrie2+motliste[x].lower() x=x+1 ecrirefich = ""%s";"%s"n" % (a[:len(a)-1],motrie2) print ecrirefich dest.write(ecrirefich)
fichiermots.close() dest.close()
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
Voici le code correspondant :
Sans le print ecrirefich à la fin, ca coince !
Je n'ai pas d'idée
Merci
Francois
ps : mis sitecustomize.py latin-1.
En entete du programme, Cp1252,latin11,cp850,utf-8 ca ne résoud rien.
fichiermots=open('mots_francais.txt','r') #fichier initial
dest=open('dicosort.txt','w') #fichier retraité
DICO={'-':'','ä':'a','é':'e','è':'e','ê':'e','ë':'e','à':'a','â':'a','ç':'c','î':'i','ï':'i','ü':'u','ù':'u','û':'u','ö':'o','ô':'o'}
Le
while L<123:
DICO[chr(L)]=chr(L)
L=L+1
while 1:
motliste=[]
motrie2=''
x=0
a=fichiermots.readline()
if len(a)==0: #tester si EOF
break
else:
for car in a[:len(a)-1]:
s=DICO[car] #remplacement accentuation par
normal
motliste.append(s) #constitution du mot
motliste.sort()
for let in motliste:
motrie2=motrie2+motliste[x].lower()
x=x+1
ecrirefich = ""%s";"%s"n" % (a[:len(a)-1],motrie2)
print ecrirefich
dest.write(ecrirefich)
Voici le code correspondant : Sans le print ecrirefich à la fin, ca coince ! Je n'ai pas d'idée Merci Francois
ps : mis sitecustomize.py latin-1. En entete du programme, Cp1252,latin11,cp850,utf-8 ca ne résoud rien.
fichiermots=open('mots_francais.txt','r') #fichier initial dest=open('dicosort.txt','w') #fichier retraité DICO={'-':'','ä':'a','é':'e','è':'e','ê':'e','ë':'e','à':'a','â':'a','ç':'c','î':'i','ï':'i','ü':'u','ù':'u','û':'u','ö':'o','ô':'o'} Le while L<123: DICO[chr(L)]=chr(L) L=L+1 while 1: motliste=[] motrie2='' x=0 a=fichiermots.readline() if len(a)==0: #tester si EOF break else: for car in a[:len(a)-1]: s=DICO[car] #remplacement accentuation par normal motliste.append(s) #constitution du mot motliste.sort() for let in motliste: motrie2=motrie2+motliste[x].lower() x=x+1 ecrirefich = ""%s";"%s"n" % (a[:len(a)-1],motrie2) print ecrirefich dest.write(ecrirefich)
fichiermots.close() dest.close()
-- Francois A. _________
Excellent newsreader : http://mesnews.no-ip.com
Encolpe Degoute
Bonjour,
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
var1=""%s","%s"rn" % (a,motrie) dest.write(var1)
Cela ressemble à un export au format CSV. Il y a le module « csv » qui gère cela maintenant.
Ca me génère une erreur : KeyError: 'xeb'
Pour savoir de quel variable vient l'erreur je ferai le write en deux fois:
dest.write('"%s",' % a) dest.write('"%s"rn' % motrie)
Le caractère 'xeb' est 'ë':
c = 'ë' c.decode('utf-8').encode('iso-8859-15') 'xeb'
Avec le traceback complet cela nous donnerait un indice supplémentaire, même si cela ressemble à un problème d'encodage.
Si je mets print var1 entre les deux lignes, le programme tourne normalement. Bizarre. Une idee ??
J'ai déjà vu ça. Il faudrait plutôt faire un print de a et de motrie avant de créé var1 pour tracer le problème. Qi cela ne fonctionne pas, il suffira de commenter un print pour savoir de quel variable vient l'erreur.
Cordialement, -- Encolpe DEGOUTE http://encolpe.degoute.free.fr/ Logiciels libres, hockey sur glace et autres activités cérébrales
Bonjour,
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
var1=""%s","%s"rn" % (a,motrie)
dest.write(var1)
Cela ressemble à un export au format CSV. Il y a le module « csv » qui
gère cela maintenant.
Ca me génère une erreur : KeyError: 'xeb'
Pour savoir de quel variable vient l'erreur je ferai le write en deux fois:
dest.write('"%s",' % a)
dest.write('"%s"rn' % motrie)
Le caractère 'xeb' est 'ë':
c = 'ë'
c.decode('utf-8').encode('iso-8859-15')
'xeb'
Avec le traceback complet cela nous donnerait un indice supplémentaire,
même si cela ressemble à un problème d'encodage.
Si je mets print var1 entre les deux lignes, le programme tourne
normalement. Bizarre. Une idee ??
J'ai déjà vu ça.
Il faudrait plutôt faire un print de a et de motrie avant de créé var1
pour tracer le problème. Qi cela ne fonctionne pas, il suffira de
commenter un print pour savoir de quel variable vient l'erreur.
Cordialement,
--
Encolpe DEGOUTE
http://encolpe.degoute.free.fr/
Logiciels libres, hockey sur glace et autres activités cérébrales
J'ai le code suivant (une partie)(peu importe ce que ca fait à vrai dire)
var1=""%s","%s"rn" % (a,motrie) dest.write(var1)
Cela ressemble à un export au format CSV. Il y a le module « csv » qui gère cela maintenant.
Ca me génère une erreur : KeyError: 'xeb'
Pour savoir de quel variable vient l'erreur je ferai le write en deux fois:
dest.write('"%s",' % a) dest.write('"%s"rn' % motrie)
Le caractère 'xeb' est 'ë':
c = 'ë' c.decode('utf-8').encode('iso-8859-15') 'xeb'
Avec le traceback complet cela nous donnerait un indice supplémentaire, même si cela ressemble à un problème d'encodage.
Si je mets print var1 entre les deux lignes, le programme tourne normalement. Bizarre. Une idee ??
J'ai déjà vu ça. Il faudrait plutôt faire un print de a et de motrie avant de créé var1 pour tracer le problème. Qi cela ne fonctionne pas, il suffira de commenter un print pour savoir de quel variable vient l'erreur.
Cordialement, -- Encolpe DEGOUTE http://encolpe.degoute.free.fr/ Logiciels libres, hockey sur glace et autres activités cérébrales
Do Re Mi chel La Si Do
Bonjour !
Pas de problème, chez moi (avec ou sans le print ecrirefich). Tu devrais regarder "maketrans", "translate" (dans la librairie standard) ; ça pourrait t'intéresser...
@-salutations
Michel Claveau
Bonjour !
Pas de problème, chez moi (avec ou sans le print ecrirefich).
Tu devrais regarder "maketrans", "translate" (dans la librairie standard) ;
ça pourrait t'intéresser...
Pas de problème, chez moi (avec ou sans le print ecrirefich). Tu devrais regarder "maketrans", "translate" (dans la librairie standard) ; ça pourrait t'intéresser...