Un débutant et ses IF (PYTHON) - Python - Programmation
Marsh Posté le 26-08-2010 à 13:33:06
J'ai trouvé apres une bonne matinée de recherche.
import os
import os,shutil
import os.path
try:
Src = open("c:\\in1.csv","r" )
Dest = open("c:\\out1.csv","w" )
data=Src.read()
output=data.replace('"','')
Dest.write(output)
Src.close()
Dest.close()
shutil.copyfile("C:\\out1.csv","C:\\in1.csv" )
os.remove('c:\\out1.csv')
except IOError:
print ('fichier introuvable')
try:
Src = open("c:\\in2.csv","r" )
Dest = open("c:\\out2.csv","w" )
data=Src.read()
output=data.replace('"','')
Dest.write(output)
Src.close()
Dest.close()
shutil.copyfile("C:\\out2.csv","C:\\in2.csv" )
os.remove('c:\\out2.csv')
except IOError:
print ('fichier introuvable')
Marsh Posté le 26-08-2010 à 15:17:46
Critiques:
Code :
|
pourrant quand même être plus sympa.
Marsh Posté le 28-08-2010 à 17:52:39
pythol a écrit : Si je lance le programme il me parle d'indentation error mais je ne vois pas ou.
|
Tu mets un "if" sans lui associer d'instruction à exécuter si le test est vrai.
pythol a écrit : Au passage, je ne sais pas quoi mettre au ELSE final, comment quitter le programme proprement ? |
Ben si le else est en final, il est inutile. Si tu mets rien, le programme se terminera tout seul.
Sinon l'instruction sys.exit() permet de quitter un programme (faut inclure le module sys)
Marsh Posté le 26-08-2010 à 12:41:55
Bonjour,
je début en Python (5 jours) et je suis bloqué par un petit if qui compare une variable booléen.
Ce petit code me permet de modifier 3 fichiers csv, il retire les quottes puis le restitue avec le nouveau format.
le seul problème que j'ai est le IF, je veux qu'il ne rentre pas dans in1, in2 ou in3 si le fichier n'est pas présent.
Je veux que dés le début il vérifie la présence du fichier puis face la modif que du fichier présent.
Au passage, je ne sais pas quoi mettre au ELSE final, comment quitter le programme proprement ?
Si je lance le programme il me parle d'indentation error mais je ne vois pas ou.
J'ai cette erreur:
File "C:\prog.py", line 8
Src = open("c:\\in1.csv","r" )
^
IndentationError: expected an indented block
On ma conseillé de mettre mais cela ne fonctionne pas mieux.
try:
f=open(in1.csv, 'r')
except IOError:
print "fichier introuvable"
MERCI
\\------------------------------------------
import os
import os,shutil
import os.path
in1 = os.path.isfile("c:\\in1.csv" )
in2 = os.path.isfile("c:\\in2.csv" )
in3 = os.path.isfile("c:\\in3.csv" )
if in1 == True:
Src = open("c:\\in1.csv","r" )
Dest = open("c:\\out1.csv","w" )
data=Src.read()
output=data.replace('"','')
Dest.write(output)
Src.close()
Dest.close()
shutil.copyfile("C:\\out1.csv","C:\\in1.csv" )
os.remove('c:\\out1.csv')
elif in2 == True:
Src = open("c:\\in2.csv","r" )
Dest = open("c:\\out2.csv","w" )
data=Src.read()
output=data.replace('"','')
Dest.write(output)
Src.close()
Dest.close()
shutil.copyfile("C:\\out2.csv","C:\\in2.csv" )
os.remove('c:\\out2.csv')
elif in3 == True:
Src = open("c:\\in3.csv","r" )
Dest = open("c:\\out3.csv","w" )
data=Src.read()
output=data.replace('"','')
Dest.write(output)
Src.close()
Dest.close()
shutil.copyfile("C:\\out3.csv","C:\\in3.csv" )
os.remove('c:\\out3.csv')
else: