4.0
1.修复了之前因文件重名而导致文件名修改时文件被删除的bug。
2.新加入以创建时间排序,升序降序
main.py
import os
import make
path_0=input('输入文件路径,默认/Download/') mode=int(input('排序方式,1:文件大小排序2:创建时间排序\n>>>'))
tf=int(input('1:升序 2降序\n>>>'))
#返回path中文件名列表
path ='/storage/emulated/0/Download/'+path_0
path_1=path+'%&%'
make.mkdir(path_1)
make.rename(path,mode,tf,path_1)
make.delete(path,path_1)
print('修改完成')
make.py
import os
import time
from tqdm import tqdm
def mkdir(path):
path=path.rstrip('\\')
isExists = os.path.exists(path)
if not isExists:
os.makedirs(path)
print(path+'创建成功')
else:
print(path+'目录已存在')
def delete(path,path_1):
os.rmdir(path)
os.rename(path_1,path)
def sorting(path,mode,tf):
if tf==1:
TF=False
else:
TF=True
filelist = os.listdir(path)
list_1=[]
for file in filelist:
#拼接路径,生成完整路径
Olddir=os.path.join(path,file)
if mode==1:
#获取文件大小
size=os.path.getsize(Olddir)
list_1.append(size)
elif mode==2:
time_0=os.path.getmtime(Olddir)
list_1.append(time_0)
#将filelist与list_1打包生成列表
list_2=list(zip(filelist,list_1))
#根据文件大小升序排列
list_2.sort(key=lambda x:x[1],reverse=TF)
filelist,list_1=zip(*list_2)
return(filelist)
def rename(path,mode,tf,path_1):
count=1
for file in tqdm(path,mode,tf):
Olddir=os.path.join(path,file)
#os.path.splitext("path"):分离文件名与扩展名 filename=os.path.splitext(file)[0]
filetype=os.path.splitext(file)[1]
#zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0
Newdir=os.path.join(path_1,
str(count).zfill(4)+filetype)
os.rename(Olddir,Newdir)
time.sleep(0.01)
count+=1