Frage

Ich mache ein Programm, das für einen Weg fragt und Windows' Pfade enthalten Schrägstriche, die als eine Escape-Sequenz von Python interpretiert werden kann, wenn der Brief direkt neben der falsche ist. Ich versuchte string.replace (), aber es funktioniert nicht, da diese Backslash in Escape-Sequenzen umgewandelt, bevor die Ersetzen-Funktion ausgeführt hat.

Gibt es eine Möglichkeit, sie zu entfernen und sie vielleicht machen / statt \?

War es hilfreich?

Lösung

Wenn Sie für den Benutzer zur Eingabe fragen, dann wird ein \ einen String als \ richtig gehen. Nur wenn Sie dann die Zeichenfolge des Benutzer eval in irgendeiner Weise wird die Backslash Zählung als Escape-Zeichen. Sie wirklich nur Sorgen brauchen über Flucht, wenn Sie Strings im Code schreiben.

Andere Tipps

Nein, der Backslash nicht als Escape-Sequenz außer in Python Quellcode interpretiert. Wenn Sie nicht gerade eval () ing den Pfad, der falsch wäre, ich bin nicht sicher, warum Sie ein Problem haben würde.

Mit Doppel \

str = 'c:\\dir\\file.txt'

print str.replace('\\','/')
print str

hier wir die Ausgabe

c:/dir/file.txt
c:\dir\file.txt
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top