主页 > 知识库 > python批量更改目录名/文件名的方法

python批量更改目录名/文件名的方法

热门标签:电话运营中心 语音系统 硅谷的囚徒呼叫中心 百度AI接口 呼叫中心市场需求 企业做大做强 Win7旗舰版 客户服务

跑模型和测试一些批量操作时,常常需要一个或多个文件中的文件的命名格式具有一定的规律。有时候获取的数据又是从一些网站爬取下来的,数据名具有一定的不规律性,这是就需要我们去重命名这些文件。10,20个还好说,如果是上百个,上千个,甚至上万个呢?我们还能去手动命名吗?显然不可能的!这时就需要批量更改文件名的操作。


一、python实现批量更改目录名

这里以重命名图片为例

# -*- coding: UTF-8 -*-
"""
@Author  :远方的星
@Time   : 2021/4/16 9:16
@CSDN    :https://blog.csdn.net/qq_44921056
@腾讯云   : https://cloud.tencent.com/developer/column/91164
"""
import os

path = input('请输入你想更改的文件的路径(如D:/图片/风景):')
file_list = os.listdir(path)
file_list.sort()  # 对列表内容进行排序,默认为升序

i = 0  # 用于记录重命名,方便重命名
for item in file_list:
    if item.endswith('.jpg'):  # 这里以.jpg进行判断文件名
        src = os.path.join(path, item)
        dst = os.path.join(os.path.abspath(path), str(i) + '.jpg')

        try:
            os.rename(src, dst)
            print('已将{}更改为{}'.format(src, dst))
            i += 1
        except Exception as e:
            print(e)
            print('{}更改失败'.format(src))
print('所有目标文件已完成全部更改')


二、一些函数解释

os.listdir

os.listdir(path),path为需要列出的目录路径,函数返回值为指定路径下的文件和文件夹列表

import os
print(os.listdir('D:/图片'))

输出:

['Screenshots', '动漫图片', '原神', '图片格式.txt', '头像', '横屏壁纸', '海贼王', '证件照', '赛尔号', '风景', '鬼灭 之刃']

endswith

用于判断字符串是否以指定的内容结尾

具体可以参考python中endswith()函数的用法

os.path.join

用于路径的拼接

os.path.abspath

返回绝对路径

os.rename

用于重命名

基本格式为:os.rename(src , dst)

src 参数用于指定要进行重命名的目录或文件;
dst 参数用于指定重命名后的目录或文件。

三、Blogger's speech

如有不足,还请大佬评论区留言或私信我,我会进行补充。

作者:远方的星
CSDN:https://blog.csdn.net/qq_44921056
腾讯云:https://cloud.tencent.com/developer/column/91164
本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。

到此这篇关于python批量更改目录名/文件名的方法的文章就介绍到这了,更多相关python批量更改目录名/文件名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • 用python 批量更改图像尺寸到统一大小的方法
  • Python批量更改文件名的实现方法
  • python 获取当前目录下的文件目录和文件名实例代码详解
  • Python实现获取当前目录下文件名代码详解
  • 使用Python解决Windows文件名非用反斜杠问题(python 小技巧)
  • Python遍历目录并批量更换文件名和目录名的方法

标签:山西 海南 安康 济南 崇左 长沙 喀什 山西

巨人网络通讯声明:本文标题《python批量更改目录名/文件名的方法》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266