Re: exercice python

Pàgina inicial

Reply to this message
Autor: jeanluc
Data:  
A: guilde
Assumpte: Re: exercice python
> Juste pour le fun, une version qui n'optimise pas grand chose, mais que
> je trouve joli:
>
> #!/usr/bin/python
>
> fileIn = open("in.txt", "r")
> fileOut = open("out.txt", "w")
>
> for line in fileIn:
>         lineWrite=line[:-1]
>         try:
>                 line = fileIn.next()
>                 fileOut.write(lineWrite+line)
>         except StopIteration:
>                 fileOut.write(lineWrite + "\n")
>
> fileIn.close()
> fileOut.close()
>


Je n'ai pas encore rendu aux boucles dans ma doc, alors
j'ai sauté jusqu'à "try" qui semble etre un mot clef.
D'après ce que j'ai compris, on sort du bloc try, non pas
parce que "line = fileIn.next()" est évalué à faux, mais parce
que ca provoque une exception.
D'ailleurs, est-ce correct de dire "c'est évalué".
Dans ipython, a=3 ne donne rien en sortie, donc, je suppose
que "a=3" n'est pas évalué à 3 comme je pourrais penser.

Encore, sur ce truc "d'évaluer" :
fileIn = open("in.txt", "r") est-il évalué à quelque chose ?
Si non, ca pourrait expliquer pourquoi
fileIn = open("in.txt", "r") or print "existe pas" # ne marche pas
comment code-t-on en python ? :
fileIn = open("in.txt", "r") or die "in.txt existe pas"

Sinon, j'ai essayé sans "StopIteration". Effectivement, c'est un label
qui sert juste de commentaire. juste ?



--
Jean-Luc