此次修復前篇中代碼運行時不按數字大小順序重命名的問題,一般是按名稱順序。
那麼本王就依了她,不和她較勁,來個將計就計也按名稱順序。
#!/usr/bin/python
# -*- coding: utf-8 -*-
#auther:Kevin G
#可重命名共100+個文件,如有更大需要可自行添加if語句。
import os
path=input('')#程序運行後需要輸入文件路徑或者把直接在此處路徑,路徑記得加''哦。
filelist=os.listdir(path)
# 本路徑文件夾內所有文件生成列表
# print(filelist)
i=-1
for file in filelist:
filetype=os.path.splitext(file)[1]
if filetype=='.ts':
# 文件類型一定不要忘記‘.**’。
filename=os.path.splitext(file)[0]
n=int(filename)
if n<=9:
i=i+1
s=str(i)
s_width=s.zfill(3)
oldname=os.path.join(path,file)
filetype=os.path.splitext(file)[1]
newname=os.path.join(path,'a'+s_width+filetype)#10以內的a開頭在前,以外及100以內b開頭,再也不用怕了!
os.rename(oldname,newname)
print(oldname,'...',newname)
if 10<=n<=99:
i=i+1
s=str(i)
s_width=s.zfill(3)
# str.zfill(n),n表示字符串的位寬,右對齊,不足自動補0,n=3比如001,015,099,100。
oldname=os.path.join(path,file)
filetype=os.path.splitext(file)[1]
newname=os.path.join(path,'b'+s_width+filetype)
os.rename(oldname,newname)
print(oldname,'...',newname)
elif n>=100:
oldname=os.path.join(path,file)
filename=os.path.splitext(file)[0]
filetype=os.path.splitext(file)[1]
newname=os.path.join(path,'c'+filename+filetype)#百位數直接用就可以了。
os.rename(oldname,newname)
print(oldname,'...',newname)