簡體   English   中英

使用Python重命名目錄中的所有文件

[英]rename all file in a directory using Python

我想制作一個Python程序,該程序從輸入參數中獲取文件夾名稱,然后通過在其末尾添加“ _ {n}”來重命名其所有文件,其中n是該文件的序列號。 例如,如果包含文件夾“ images”,“ images / cat.jpg”,“ images / dog.jpg”,則在運行命令后,它將具有“ images / cat_1.jpg”,“ images / dog_2.jpg” 。 根據上次訪問日期對文件進行排序。 我嘗試了部分問題,如下所示:-

import os
from os import rename
from os.path import basename

path =  os.getcwd()
filenames =next(os.walk(path))[2]
countfiles=len(filenames)

for filename in filenames:
    fname=os.path.splitext(filename)[0]
    ext=os.path.splitext(filename)[1]
    old=fname+ext
    new=fname + '_' +ext
    os.rename(old, new)

這可以重命名該文件,並在文件名的末尾添加一個下划線。但是,我不知道在下划線后添加文件序列。 我想知道如何使用簡單的Python腳本批量重命名文件。 我將不勝感激任何建議。

謝謝!

您是否嘗試過類似的方法:

import os
filepath = 'C:/images/'
os.chdir(filepath)
for num, filename in enumerate(os.listdir(os.getcwd()), start= 1):
    fname, ext = filename, ''
    if '.' in filename:
        fname, ext = filename.split('.')
    os.rename(filename, fname + '_%s' %num + '.' + ext)    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM