python提升篇(十)---批量读取文件重命名

物体由于发生弹性形变,各部分之间存在着弹性力的相互作用而具有的势能叫做“弹性势能”。在工程中又称“弹性变形能”。例如,被压缩的气体、拉弯了的弓、卷紧了的发条、拉长或压缩了的弹簧都具有弹性势能。

弹性势能是存储在材料或物理系统的构造中的潜在机械能,因为执行工作以扭曲其体积或形状。当需要压缩和拉伸或大体上以任何方式变形时,弹性能量就会发生。弹性理论主要发展为固体和材料力学的形式 [1] (注意,拉伸橡皮筋所做的工作不是弹性势能的一个例子,它是熵弹性的一个例子)弹性势能方程用于机械平衡位置的计算。在数学上,方程可以表示为 [2] :

势能的单位与功的单位是一致的。确定弹力势能的大小需选取零势能的状态,一般选取弹簧未发生任何形变,而处于自由状态的情况下其弹力势能为零。弹力对物体做功等于弹力势能增量的负值。即弹力所做的功只与弹簧在起始状态和终了状态的伸长量有关,而与弹簧形变过程无关。弹性势能是以弹力的存在为前提,所以弹性势能是发生弹性形变,各部分之间有弹性力作用的物体所具有的。如果两物体相互作用都发生形变,那么每一物体都有弹性势能,总弹性势能为二者之和。                                                                      

科普

知识

前言

     在上周的文章中我们学习了正则化匹配技术的re.match函数,了解了基本的使用方法,当然还有一个类似的匹配函数--re.search方法,甚至还有许多具体的匹配方式(.*?等等)就交个大家自行学习我们就不再单独叙述了。今天,我们将会学习如何将文件夹中的文件进行批量(整体)的重命名。

一、背景

万事有果必有因,首先来看一下我的文件夹里面的文件排布(写文需要):

可以看到, 在src_img这文件夹中有96个文件(都是图片),并且每个文件的名字都是随机的,很乱,如果我们想将其规范化的话,就需要对每个文件进行手动重命名,然而这样的工作室几个的话还好,如果是几十个,比如我们的96个一一进行手动重命名的话就十分的浪费时间,因此这就是我们今天代码的登场的原因了,接着往下看!

1.1 操作概述

1.为了不产生文件夹冲突,我们需要新建另一个文件夹用来存储重命名后的文件,新建文件夹名字为dst_img.

2.重命名文件名规则:log+index,例如,logo1,logo2(不固定,实际的时候看自己)

3.代码所用函数:

1.os.listdir(): 该函数作用为列出当前文件夹下所有文件清单(文件名的集合)

2.os.rename:文件重命名函数

4.代码所用语法;

1.for循环读取文件(循环读取文件后进行文件重命名)

2.文件名路径组合(读取到文件后需要生成每一个文件的路径)

1.2代码实践

#coding:utf-8
# 导入os包,因为os.listdir,os.rename都属于os包的函数
import os


# 指定原始文件夹(相对路径)
img_dir = './src_img/'
# 指定重命名后存储文件夹(相对路径)
dst = './dst_img/'
# 获取当前路径下的所有文件名
img_names = os.listdir(img_dir)
index = 1
# 打印文件夹下的数量
print(len(img_names))
# 循环读取文件,批操作文件名重命名
for each_img in img_names:
  # 获取文件路径,后面重命名需要对每一个文件的路径进行操作
  src_path = img_dir + each_img
  # 新文件名()自定义 此处为 logo_index.jpg
  dst_path = dst +'logo_{}.jpg'.format(index)
  os.rename(src_path, dst_path)
  print("第{}个文件,{}已重命名".format(index,each_img))
  index = index + 1

代码较为简单,我们来分析下代码的运行流程:

  1. 首先指定原始文件名和新生成文件名

  2. 获取原始文件夹下的所有文件名(os.listdir()函数操作)

  3. 循环上一步的文件名列表:

      生成当前文件的文件路径

        生成当前文件的存储文件夹+存储名字

        执行文件重命名操作

        提示当前文件已重命名

   循环结束。

1.3 效果展示

如上图所示,文件名已重命名。

END

结语

      今天的分享结束了,从代码流程到代码实践,我们都做了清楚的解释,不管是逻辑还是顺序我们都进行了分析,很实用的提升技能哦,希望大家都学会哦。

编辑:玥怡居士|审核:小圈圈居士

往期精彩回顾

python提升篇(九)---正则表达式之re.match函数

python提升篇(八)---方法重写

python提升篇(七)---类的继承

扫码关注我们

IT进阶之旅

我就知道你“在看”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值