Wie lässt sich beispielsweise ein Windows-Verzeichnis am besten darstellen "C:\meshes\as"
? Ich habe versucht, ein Skript zu ändern, aber es funktioniert nie, weil ich das Verzeichnis nicht richtig zu finden scheine, nehme ich an, weil es '\'
als Escape-Charakter fungiert.
python
path
string-literals
Gareth
quelle
quelle
Verwenden Sie das
os.path
Modul.Oder verwenden Sie rohe Zeichenfolgen
Ich würde auch empfehlen, keine Leerzeichen im Pfad oder Dateinamen. Und Sie könnten doppelte Backslashes in Ihren Saiten verwenden.
quelle
"C:\"
als ersten Eintrag zu setzen? Beeinträchtigt das die Sauberkeit der Verwendungjoin
?"C:\"
in die Mitte des Dateinamens setzen. Außerdem können Sieos.path.normpath
vor oder nach einem Join verwenden, um sicherzustellen, dass der Pfad ordnungsgemäß gedruckt wird.os.path.join( "C:\\", "meshes", "as" )
Ja,
\
in Python bezeichnet String-Literale den Beginn einer Escape-Sequenz. In Ihrem Pfad haben Sie eine gültige Escape-Sequenz mit zwei Zeichen\a
, die zu einem Zeichen zusammengefasst ist, das ASCII Bell ist :Andere gebräuchliche Escape-Sequenzen sind
\t
(Tab),\n
(Zeilenvorschub),\r
(Wagenrücklauf):Wie Sie sehen können, wurden in all diesen Beispielen der Backslash und das nächste Zeichen im Literal zu einem einzigen Zeichen in der letzten Zeichenfolge zusammengefasst. Die vollständige Liste der Escape-Sequenzen von Python finden Sie hier .
Es gibt verschiedene Möglichkeiten, damit umzugehen:
Python verarbeitet keine Escape-Sequenzen in Zeichenfolgenliteralen mit dem Präfix
r
oderR
:Python unter Windows sollte auch Schrägstriche verarbeiten.
Sie könnten verwenden
os.path.join
...... oder das neuere
pathlib
Modulquelle
Verwenden Sie PowerShell
Unter Windows können Sie
/
in Ihrem Pfad genau wie Linux oder macOS an allen Stellen verwenden , solange Sie PowerShell als Befehlszeilenschnittstelle verwenden. Es kommt vorinstalliert auf Windows und unterstützt viele Linux - Befehle wiels
Befehl.Wenn Sie die Windows-Eingabeaufforderung verwenden (die angezeigt wird, wenn Sie das
cmd
Windows-Startmenü eingeben), müssen Sie Pfade angeben, die sich\
direkt darin befinden. Sie können/
Pfade an allen anderen Stellen verwenden (Code-Editor, interaktiver Python-Modus usw.).quelle
Wenn Sie einen Windows-Pfad aus einer anderen Quelle (z. B. dem Datei-Explorer) einfügen möchten, können Sie dies per
input()
Aufruf in der Python-Konsole tun :Dann kopieren Sie einfach das Ergebnis
quelle