美文网首页
Python批量重命名本地文件

Python批量重命名本地文件

作者: yytester | 来源:发表于2018-10-19 00:11 被阅读35次

有120张纸质文档,分为正反两面, 每个正面都有编号,从1-120. 需要正反两面全部拍照,然后重命名.


操作步骤:

  1. 手机qq打开'我的电脑'聊天界面
  2. 拍照,发送
  3. 本机登录qq,自动接收文件,保存到本机.

有两个问题:

  1. 由于文件的摆放问题,拍照是从编号120的文件开始的,最后拍到编号1的,一共240张图片
  2. 手机qq传给电脑qq的照片,被自动命名为15xxxxxx.jpg, 按拍照顺序,从小到大命名.(也就是说,文档编号越小的,拍照时间越晚,在电脑内此时命名越大) image.png

思路:

  1. 把所有图片放到数组f里,过滤文件名后面的'.jpg'字符
  2. 数组从大到小排序
  3. 由于最后拍照的是编号1文档的反面,也就是数组下标为0的应该命名为1b,数组下标为1的应该命名为1a, 以此类推,设置文件名初始值n=1, 在数组的偶数位命名+b,奇数位命名+a,每到一个奇数位,n+1.

脚本如下:

import os
import sys

path = ('./ttt/')

#获取该目录下所有文件,存入列表中
f =os.listdir(path)
print(len(f))

#删除.jpg后缀,只要文件名前13位数字
newarr = []
for i in f:
    x = i[0:13]
    newarr.append(x)
    
#文件名从大到小排序
newarr.sort(reverse=True)



n = 1

for i in range(len(newarr)):
    oldname = path + newarr[i] +'.jpg'
    #第0,2,4...偶数位是反面,命名+b , 奇数位是正面,命名+a
    if i % 2 == 0 :
        newname = path + str(n) + 'b' + '.jpg'
    else:
        newname = path + str(n) + 'a' + '.jpg'
        n = n + 1

    #用os模块中的rename方法对文件改名
    os.rename(oldname,newname)
    print(oldname,'======>',newname)
    
    

运行结果:

image.png

相关文章

  • Python批量重命名本地文件

    有120张纸质文档,分为正反两面, 每个正面都有编号,从1-120. 需要正反两面全部拍照,然后重命名. 操作步骤...

  • 单行命令

    批量重命名文件:

  • 批量重命名文件

    使用Python实现批量重命名文件 batch_rename_file.py 命令行执行 运行结果

  • A Better Finder Rename 10 for Ma

    批量文件重命名软件哪个好?A Better Finder Rename for Mac是一款批量文件重命名工具,仅...

  • python批量重命名文件

    最近在网上爬虫爬取了一个文物图像的数据集,使用opencv读取的时候发现不支持中文名,所以批量的对图像及中7000...

  • TotalCommander(文件批处理工具)使用指南

    一,批量重命名软件和后缀 解压软件,选择TotalCommander 1,选择批量重命名要处理的文件 2,批量命名...

  • 批量文件重命名

    通过Linux rename命令,可以很方便的批量文件重命名 如当前目录存在一下文件,需要批量重命名成png文件:...

  • Python:闪电批量文件重命名

    大致路径 对python只会打“hello,world”的基础下,安装了python3和pycharm; 初步了解...

  • Python_ 批量重命名文件

    iPhone照片都是 IMG_数字 的命名方式,同步后想直观知道照片的拍照日期(最后修改日期),直接贴代码: #!...

  • python 文件批量重命名

    文件夹下面的文件夹里面的文件批量重命名 具体描述,一个路径下面的文件夹A,A文件夹下面有n个文件夹B1,B2,B3...

网友评论

      本文标题:Python批量重命名本地文件

      本文链接:https://www.haomeiwen.com/subject/flpezftx.html