批量修改文件名 (python对于文件目录的操作)

前言

测试总遇到各种造数据的情况,在测试文件数量不足的情况,我需要批量修改文件名,才能符合测试需求,客户只提供部分文件,这样就要批量修改文件名。

如何做

os.listdir() 可以读取文件夹中的文件,存放在列表中,os.rename()可以把文件重命名,那么我就可以写脚本了,这次简单粗暴吧。

import os

class Rename():
    '''
    重命名文件名,将文件名写入指定的txt文件中
    '''
    def __init__(self,path):
        #初始化需要改写文件名的目录
        self.path = path

    def rename_fun(self):
        '''
        重命名文件方法
        '''
        fileList = os.listdir(self.path)
        print(fileList)

        n = 0
        for fileanme in fileList:
            #当前文件的名称(路径+文件名)
            current_name = self.path + os.sep + fileanme  #os.sep添加分隔符\

            #设置新的文件名
            new_name = self.path + os.sep + 'dp-45655544' + str(n + 1)+ "-2"+".txt"
            os.rename(current_name, new_name)  # 用os模块中的rename方法对文件改名
            # print(current_name, '======>', new_name)
            n += 1


    def get_image_paths(self):
        '''
        遍历.txt结尾文件的文件
        '''
        return (os.path.join(self.path, f)
                for f in os.listdir(self.path)
                if '.txt' in f)

    def main_write_path(self):
        """
        主流程的方法的调用
        """
        self.rename_fun()
        image = self.get_image_paths()
        print(image)
        for i in image:
            try:
                res = next(image,"——————————————————获取的文件名称————————————————————-")
                print(res)
            except StopIteration:
                # 遇到StopIteration就退出循环
                break

            #写入test001文件
            with open(r"C:\Users\pengfei\Desktop\test001.txt", mode='a+') as f:
                f.write(res + "\n")

Rename(r"C:\Users\pengfei\xxxxx\12345").main_write_path()

查看下文件修改效果:
在这里插入图片描述
文件的各种操作,我以后再多总结,这里仅仅写一写我遇到问题,如有更好的方法,方案,请多多赐教。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值