[CLOS] Python & échappement

Bonjour à tous!
Aujourd'hui j'ai besoin de tous les codeurs diponibles! :stuck_out_tongue:
Mon problème étant que je code un programme python appellant un fichier batch présent sur mon ordinateur (qui va ensuite interagir avec l'Arduino).
J'utilise ce code-ci:

filepath="<U+202A>C:/Users/Tom/Documents/Programmation/reinit.bat"
p = subprocess.Popen(filepath, shell=True, stdout = subprocess.PIPE)
stdout, stderr = p.communicate()
print(p.returncode)

Mais je ne sais pas si ce code est bon...
Le filepath n'est pas bon car le bon serait:
C:\Users/Tom/Documents/Programmation/reinit.bat
et non
C:/Users/Tom/Documents/Programmation/reinit.bat
Python me sortant une erreur de type Unicode à chaque essai car l'antislash au début n'est pas échappé...
Une solution? Merci d'avance!

bonjour,
double ton \

C:\\Users/Tom/Documents/Programmation/reinit.bat

http://python.developpez.com/faq/?page=String#Pourquoi-j-obtiens-une-erreur-lorsque-mon-string-contient-le-caractere-backslash

Sauf que si je le double, un code 1 est retourné :confused:
Cela signifie-t-il que le chemin d'accès est invalide?
Pourtant j'ai verifé et re-vérifié que le chemin soit correct, et c'est le cas!

J'ai trouvé la solution!
J'avais effectivement oublié d'ajouter un r avant d'indiquer la destination! Quel erreur stupide! ^^"
Merci pour votre aide!

filepath=r"c:\Users/Tom/Documents/Programmation/reinit.bat"
p = subprocess.Popen(filepath, shell=True, stdout = subprocess.PIPE)
stdout, stderr = p.communicate()
print(p.returncode)

le r est raw string en python
sous win, le chemin est de mémoire en c:\xxxx\zzzz\yyyyy\fichier.bat

dans ce cas, tu peux mettre

c:\\xxxx\zzzz\\yyyyy\\fichier.bat

ou

r'c:\xxxx\zzzz\yyyyy\fichier.bat'