Renommer les noms de fichier contenant des espaces

Je suis en train d'écrire un simple script Python pour renommer tous les fichiers dans un répertoire de remplacer tous les espaces dans le nom de fichier avec des traits d'union. J'ai le texte suivant, qui est de s'écraser sur les os.renommer

import os

path =  os.getcwd()
filenames = os.listdir(path)

for filename in filenames:
    os.rename(os.path.join(path + filename), os.path.join(path + filename.replace(" ", "-")))

Donne l'erreur dans la console:

Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
OSError: [Errno 2] No such file or directory

Toutes les idées sur le pourquoi de ce qui se passe?

InformationsquelleAutor igniteflow | 2011-09-19