Я пытаюсь заменить символ в нескольких файлах в нескольких подкаталогах (более 700 файлов в 50 или около того вложенных папок). Эти файлы работают, если я удаляю путь и помещаю файл в определенную папку; Однако, когда я пытаюсь использовать функцию os.walk, чтобы пройти через все подкаталоги, я получаю следующее сообщение об ошибке:Использование os.walk в Python
[Error 2] The system cannot find the file specified
Это указывает на последнюю строку моего кода. Вот код в полном объеме:
import os
path = "C:\Drawings"
for root, dirs, files in os.walk(path): # parse through file list in the current directory
for filename in files: #os.listdir(path):
if filename.find("~"):# > 0: # if a space is found
newfilename = filename.replace("~","_") # convert spaces to _'s
os.rename(filename,newfilename) # rename the file
Ваше 'имя файла 'относительно. Вам нужно использовать 'os.path.join (root, filename)'. То же самое относится к 'newfilename'. –