Comment renommer les images dans le dossier
J'ai 35 dossiers et chaque dossier contient 50 images, et chaque image a un nom différent, comme copy(3), rename, youanem
et ainsi de suite. Je veux renommer toutes les images dans tous les dossiers des numéros de séquence, c'est à dire le dossier 0
contient 50 images, et il doit leur donner de tels chiffres 0 à 49 et de même pour le reste des dossiers et de leurs images. Les noms de dossier sont de 0 à 9 puis de A-Z.
Est-ce possible de le programmer pour qu'il , ou je dois le faire manuellement
C'est mon premier essaie , je n'ai pas essayer du tout au tout :
from os import rename, listdir
folder = "D://images//"
fnames = listdir('.')
for fname in fnames:
if fname.startswith(folder):
rename(fname, fname.replace(name, '', 1))
Je ne reçois pas idée de la façon de donner le nom de
Grâce
- Il est possible. Qu'avez-vous essayé?
- montrez-nous vos travaux pour que nous puissions avez-vous été frappé!!
- assurez-vous permettez-moi de le mettre à jour
Vous devez vous connecter pour publier un commentaire.
Cela montre comment la séquence de tous les fichiers dans un répertoire. Par exemple, si le répertoire a 50 fichiers, il pourra les renommer 0 à 49. Vous pouvez également parcourir vos noms de dossier à l'aide de certains itérateur comme suit:
os.path.isdir
pour vérifier si il est en fait un répertoire avant de traverser.for i, filename in enumerate(os.listdir(dirname)): WindowsError: [Error 267] The directory name is invalid: 'best.py/*.*'
if os.path.isdir(dirname)
vérifier? Ce que votre code est en train de faire estos.listdir()
sur votre script python. Le chèque doit l'en empêcher.WindowsError: [Error 183] Cannot create a file when that file already exists
je donne la addrees manuellementdirname ="D:\Pt\FR\Char\"
os.rename(dirname + "/" + filename, dirname + "/" + str(i))
python *.py
jpg
de toutes les images.jpg
type d'extension? si oui, vous pouvez simplement ajouter le à votre chaîne de remplacement (le deuxième argument). Je ne savais pas que les images auraient des différents types!La méthode la plus Simple et la plus Propre, Itérer sur tous les fichiers et les renommer avec l'index.
Vous pouvez utiliser os.à pied:
Ceci devrait faire exactement ce que tu voulais.
Voici un script que j'ai déjà écrit pour cela que vous êtes invités à utiliser: http://pastebin.com/gYbGEaZY.
Si vous venez d'exécuter le script, il vous mènera à travers la sélection du répertoire, de la définition du préfixe /suffixe etc. étape par étape, et même vous donner la possibilité d'inverser les modifications après si vous n'êtes pas heureux avec eux.
Laissez-moi savoir si vous avez des questions au sujet du code.
MODIFIER
Il ya un couple de pièces que vous devez peut-être modifier. L'un est une liste des types de fichier qu'il est à la recherche dans get_file_extensions et l'autre est tout tracé donné /variables d'environnement visé à l'aide de mac os.la fonction getenv
Voici le code en cas de problème avec le lien:
dirpath,'{}.{}'
dirpath
inclure le basepathbase_path ="D:\Pt\FR\Char\"
et oui j'ai changer le type de bmp , mais ne fonctionne toujours pasEn Python 3.7.x (je ne sais pas pour les versions précédentes) cette solution fonctionne tout type de fichiers dans le répertoire et je n'ai pas eu toute erreur popping jusqu'à présent.
Attention, vous devez fournir l'extension du fichier (à la fin) lorsque vous définissez 'new_name'.