py之os模块练习

本文介绍了一种使用Python批量修改目录下所有图片文件后缀名的方法,通过随机生成文件名并创建.png格式的文件,然后将这些文件的后缀名统一更改为.jpg。此过程涉及目录操作、文件名生成及文件重命名等步骤。

1.在当前目录新建目录img, 里面包含多个文件,
文件名各不相同(X4G5.png)
2. 将当前img目录所有以.png结尾的后缀名改为.jpg

import random
import string
import os

def gen_code(len=4):
    # 随机生成4位验证码
    li = random.sample(string.ascii_letters+string.digits,len)
    return  ''.join(li)

def create_file():
    # 随机生成100个文件名
    li = { gen_code() for i in range(100)}
    os.mkdir('img')
    for name in li:
        os.mknod('img/' + name + '.png')

#create_file()

def modify_suffix(dirname,old_suffix,new_suffix):
    """
    :param dirname: 要操作的目录
    :param old_suffix: 之前的后缀名
    :param new_suffix: 新的后缀名
    :return:
    """
    # 1.判断查找的目录是否存在,如果不存在 报错
    if os.path.exists(dirname):
        # 2.找出所有以old_suffix(.png)结尾的文件
        pngfile = [filename for filename in os.listdir(dirname)
                   if filename.endswith(old_suffix)]
        # 3.将后缀名和文件名分开,留下文件名
        basefile = [os.path.splitext(filename)[0]
                    for filename in pngfile]
        # 4.重命名文件
        for filename in basefile:
            oldname = os.path.join(dirname,filename+old_suffix)
            newname = os.path.join(dirname,filename+new_suffix)
            os.rename(oldname,newname)
            print('%s命名为%s成功' %(oldname,newname))
    else:
        print('%s 不存在,不能操作...' %(dirname))

modify_suffix('imgs','.png','.txt')
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值