鱼C论坛

 找回密码
 立即注册
查看: 1882|回复: 6

[已解决]一个关于python重命名文件的问题

[复制链接]
发表于 2020-8-14 08:56:08 | 显示全部楼层 |阅读模式
2鱼币
        各位大佬,我在电脑上下载了喜马拉雅的一个专辑,四百多个音频,可是音频名字都是数字字母,顺序也乱了,我想重命名这四百多个音频(比如,第一个是1,第二个是2),并按照喜马拉雅顺序排序(喜马拉雅上有每个音频时间,顺序也是对的),请问python能干这个活吗
最佳答案
2020-8-14 08:56:09

我刚刚写了一下
你看看是不是你想要的
import os
file_list=os.listdir('你的路径')
file_dict={}
for i in file_list:
        if os.path.isfile(i):
                file_time=os.path.getctime(i)#获取文件创建时间
                file_dict[file_time]=i               #以创建时间为键,文件名为值加入字典
                #print(i,file_time)
file_dict=dict(sorted(file_dict.items(),key=lambda x:x[0]))#以创建时间排序
name=1
for  k in file_dict.keys():#遍历字典
        file_dict[k]='file%03d%s'%(name,os.path.splitext(file_dict[k])[1]) #在字典中修改文件名,这里想怎么修改文件名,你自己写。
        name+=1
        for i in file_list[:]:   #遍历文件列表
                if os.path.isfile(i):
                        if k==os.path.getctime(i):#若文件创建时间与字典的键一致,则修改该文件名为新的名称
                                os.rename(i,file_dict[k])

最佳答案

查看完整内容

我刚刚写了一下 你看看是不是你想要的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-14 08:56:09 | 显示全部楼层    本楼为最佳答案   

我刚刚写了一下
你看看是不是你想要的
import os
file_list=os.listdir('你的路径')
file_dict={}
for i in file_list:
        if os.path.isfile(i):
                file_time=os.path.getctime(i)#获取文件创建时间
                file_dict[file_time]=i               #以创建时间为键,文件名为值加入字典
                #print(i,file_time)
file_dict=dict(sorted(file_dict.items(),key=lambda x:x[0]))#以创建时间排序
name=1
for  k in file_dict.keys():#遍历字典
        file_dict[k]='file%03d%s'%(name,os.path.splitext(file_dict[k])[1]) #在字典中修改文件名,这里想怎么修改文件名,你自己写。
        name+=1
        for i in file_list[:]:   #遍历文件列表
                if os.path.isfile(i):
                        if k==os.path.getctime(i):#若文件创建时间与字典的键一致,则修改该文件名为新的名称
                                os.rename(i,file_dict[k])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-14 08:59:13 | 显示全部楼层
只有想不到,没有做不到
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-8-14 09:00:13 | 显示全部楼层
各位大佬,怎么办呀,急死人了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-14 09:00:39 | 显示全部楼层
本帖最后由 xiaosi4081 于 2020-8-14 09:03 编辑

用os模块
import os
def rename(path):
        count = 0
        for i in os.listdir(path):
                os.rename(i,str(count)+".mp3")
                count +=1

path = "" #你的路径
rename(path)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-8-14 09:05:06 | 显示全部楼层
主要是还要根据喜马拉雅的音频时间找出顺序啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-14 12:47:03 | 显示全部楼层
写个爬虫,然后在下载的时候直接重命名。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-19 03:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表