Python實驗:消除缺失的文件編號

#####編寫一個程序,在一個文件夾中,找到全部帶指定前綴的文件,諸如spam001.txt,spam002.txt 等,並定位缺失的編號(例如存在spam001.txt 和spam003.txt,但不存在spam002.txt)。讓該程序對全部後面的文件更名,消除缺失的編號。


import shutil, re, os
filedir = 'C:\\Users\\Loyu\\Desktop\\python1'
a = os.listdir(filedir)
alist = ' '.join(a)
span = re.findall('spam(\d+).txt', alist)
span.sort()
j = 0
lenlist = []
for i in range(1,len(span)+1):
    newi = str(i)
    newistr = newi.zfill(len(span[0]))
    lenlist.append(newistr)
    if span[i-1] != lenlist[j]:
        shutil.move(filedir + '\\spam' + span[i-1] + '.txt', filedir + '\\spam' + lenlist[j] + '.txt'  )
    j += 1
print('恭喜你,全部的文件已經按順序spam' + str(lenlist) + '.txt命名')
相關文章
相關標籤/搜索