sirisunshine hat geschrieben:Code: Alles auswählen
for root, dirs, files in os.walk("C:\Users\Name\Downloads\Dateien"):
Das funktioniert jetzt nur zufällig da ein Backslash eine Escape-Sequenz einleitet. Bei der aktuellen Kombination ist das unkritisch, aber wenn der Pfad zum Beispiel "C:\Users\name\Downloads\Dateien" heißen würde (man beachte das kleine "n"), dann schlüge die Routine fehl. Der Grund dafür ist, dass "\n" ein einzelnes Zeichen im resultierenden String ergibt, nämlich das Newline-Zeichen.
Es gibt drei Möglichkeiten, das Problem zu umgehen:
Code: Alles auswählen
# doppelte Backslashes (die im String selber dann zu einem Backslash werden)
for root, dirs, files in os.walk("C:\\Users\\Name\\Downloads\\Dateien"):
# ein Raw-String, in dem der Backslash kein Escape-Zeichen ist
for root, dirs, files in os.walk(r"C:\Users\Name\Downloads\Dateien"):
# Forward-Slashes (ja, die funktionieren auch unter Windows)
for root, dirs, files in os.walk("C:/Users/Name/Downloads/Dateien"):