2017-07-17 1 views
0

Letzte Woche habe ich einen einfachen Code schrieb, die „XXXX“ finden würde, in den Unterordnern und Dateien eines Ordners und ersetze sie durch eine vierstellige Projektnummer (mein Büro hat Vorlagenordner für neue Projekte mit vielen Unterordnern/Dateien, die alle mit XXXX benannt sind, um durch die Projektnummer ersetzt zu werden, und ich war es leid, viele zu sehen diese unverändert im gesamten Projekt verbleibenden ...)Python-Code gibt „====== NEUSTART: <path> ======“, wenn zuvor ordnungsgemäß funktioniert, Batch-Ordner und Dateien mit find Umbenennen und ersetzen

Wie auch immer, habe ich es auf mehrere Projektordner letzte Woche, nachdem es zu schreiben und versuchte es heute wieder für einen neuen Projektordner ausgeführt wird, und die Shell kehrt

====== NEUSTART: ======

Python Shell return

ich den Code nicht noch dessen Speicherort der Datei geändert hatte, so ist ganz verwirrt und verwandte Themen mich nicht führen, dies zu lösen. Hier

ist der Code:

import os 

basedir = 'K:\Projects\1702 HANH Stanley Justice' 
find = "XXXX" 
replace = "1702" 

for root, dirs, filenames in os.walk(basedir, topdown=False): 
    dirs[:] = [d for d in dirs] 
    for filename in filenames: 
      filename_split = os.path.splitext(filename) 
      filename_zero = filename_split[0] 
      extension = filename_split[1] 
      if find in filename_zero: 
       path1 = os.path.join(root, filename) 
       path2 = os.path.join(root, filename_zero.replace(find, replace) + extension) 
       os.rename(path1, path2) 
       print ("file: " + path1 + " renamed to: " + path2) 

for root, dirs, filenames in os.walk(basedir, topdown=False): 
    dirs[:] = [d for d in dirs] 
    for thedir in dirs: 
     if find in thedir: 
      path1 = os.path.join(root, thedir) 
      path2 = os.path.join(root, thedir.replace(find, replace)) 
      os.rename(path1, path2) 
      print ("dir: " + path1 + " renamed to: " + path2) 

Vielen Dank im Voraus, wer auch immer raten kann mich auf, wie dies zu beheben!

+1

Haben Sie die richtigen Berechtigungen für dieses neue Projekt Mappe? Könntest du es an einem Ordner versuchen, der vorher schon mal funktioniert hat? – DavidG

+0

Ich bin nicht stark in Python-Shell, aber die paar Male, die ich es verwendet habe, bekam ich eine Nachricht wie das, als ich ein .py startete, nachdem die Shell bereits läuft. Es ist wahrscheinlich nichts, worüber Sie sich Sorgen machen müssen, aber es scheint zu bedeuten, dass Sie Ihren Prozess anders beginnen als in der Vergangenheit (oder dass Sie diese Zeile nie bemerkt haben, als Sie letzte Woche gelaufen sind). –

+0

Hallo David & Scott! Ich erkannte meinen Fehler (es ist ein dummer) und posten es als Antwort unten. Vielen Dank für Ihre schnellen Antworten, sehr geschätzt. – Amy

Antwort

0

Ich hatte heute noch nicht genug Kaffee und habe den Pfad des neuen Projektordners kopiert und eingefügt, ohne die umgekehrten Schrägstriche durch Schrägstriche zu ersetzen. ordnungsgemäß funktioniert, wenn jene zu ersetzen:

basedir = 'K:/Projects/1702 HANH Stanley Justice' 

Ich lasse diese sich für jemand anderes, erlebt diese Koffein entzogen Verstreichen Speicher oder für jemanden der Suche nach einem Code, der eine Zeichenfolge in Unterordner und Dateinamen suchen und ersetzen (mine wurde aus der Kombination ähnlich verwandter Codes erstellt, die ich hier in anderen Threads gefunden habe, konnte aber keine genaue finden.Ich bin ziemlich neu in Python, so dass stackoverflow sehr hilfreich ist!)

Verwandte Themen