Aller au contenu

[python] code erroné (?)


sloshy

Messages recommandés

Posté(e)

salut,

toujours pour l'école, je suis sur un scrypt python.

j'ai hélas un petit PB avec celui-ci:

# Le fichier traité est un fichier <texte> dont chaque ligne contient un nombre  réel (sans exposants et encodé sous la forme d'une chaîne de caractères)

def arrondir(reel):
"représentation arrondie à .0 ou .5 d'un nombre réel"
ent = int(reel)              # partie entière du nombre
fra = reel - ent              # partie fractionnaire

if fra < .25 :
fra = 0
elif fra < .75 :
fra = .5

else:
fra = 1
return ent + fra
fiSource = raw_input("Nom du fichier à traiter : ")
fiDest = raw_input("Nom du fichier destinataire : ")
fs = open(fiSource, 'r')
fd = open(fiDest, 'w')

while 1:
ligne = fs.readline()
if ligne == "" or ligne == "\n":
break
n = arrondir(float(ligne))            # conversion en <float>, puis arrondi
fd.write(str(n) + "\n")            # enregistrement
fd.close()
fs.close()

et sitot que je le lance via ma console avec pyython MonScript j'ai "fatal error" :incline:

le pire c'est que çe me le fais qu'avec ce scrypt et que je vois pas trop de fautes :chinois:

Posté(e)

Les "documentation strings" sont normalement à inclure entre triple double-quotes, ton problème vient peut-être de là ?

(Enfin c'est juste un coup d'oeil rapide à ton code)

Et tu devrais éditer ton message pour indenter le code avec des espaces, ce serait plus lisible. :francais:

Posté(e)
Pour moi, je ne vois pas d'erreur dans ton code. Peut etre une mauvaise disposition du code.

Je pense aussi, mais c'est louche quand même

Posté(e)

alors, j'ai verifié l'indentation (pas dans le code ici mais donc mon code d'originie) et c'est bon.

ensuite, j'ai essayer sous window$ et j'ai une erreur ASCII

Posté(e)
Supprime les caractères spéciaux (é, à, etc...) et réessaye.

Ou incère une ligne en début du script avec # -*- coding:Latin-1 -*-

Sinon met peut-être à jour ta version de Python (on ne sais jamais)

Bien vu, ca devrait marcher

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...