python利用文件时间批量重命名照片和视频

我来详细讲解一下“Python利用文件时间批量重命名照片和视频”的完整攻略。

1. 获取文件的创建时间

首先,我们需要获取每个文件的创建时间,可以使用Python自带的os库中的stat()函数来实现,代码如下:

import os

def get_create_time(file_path):
    # 获取文件创建时间
    create_time = os.stat(file_path).st_ctime
    # 返回创建时间
    return create_time

2. 将时间转换为字符串格式

得到创建时间以后,我们需要将其转换为我们需要的字符串格式,以便重命名文件,这里我们将其转换为“年月日-时分秒”的格式,代码如下:

import time

def format_time(create_time):
    # 将时间戳转换为结构化时间
    time_struct = time.localtime(create_time)
    # 将结构化时间转换为字符串格式
    str_time = time.strftime("%Y%m%d-%H%M%S", time_struct)
    # 返回字符串格式的时间
    return str_time

3. 批量重命名文件

有了文件的创建时间和字符串格式的时间,我们就可以通过字符串的拼接来批量重命名文件了,代码如下:

def rename_files(path):
    # 遍历目录下所有文件
    for file_name in os.listdir(path):
        # 如果是图片或视频文件
        if file_name.endswith(".jpg") or file_name.endswith(".jpeg") or file_name.endswith(".png") or file_name.endswith(".gif") or file_name.endswith(".mp4") or file_name.endswith(".avi") or file_name.endswith(".mov"):
            # 获取文件完整路径
            file_path = os.path.join(path, file_name)
            # 获取文件创建时间
            create_time = get_create_time(file_path)
            # 将创建时间转换为字符串格式
            str_time = format_time(create_time)
            # 获取文件后缀名
            file_suffix = os.path.splitext(file_name)[1]
            # 拼接新的文件名
            new_name = str_time + file_suffix
            # 重命名文件
            os.rename(file_path, os.path.join(path, new_name))

示例说明

示例1

假设有一组照片,它们的文件名分别为IMG001.jpg、IMG002.jpg、IMG003.jpg,它们的创建时间分别为2022年1月1日、2022年1月2日、2022年1月3日,我们可以将它们重命名为20220101-000000.jpg、20220102-000000.jpg、20220103-000000.jpg,代码实现如下:

rename_files("path/to/photos/folder/")

示例2

假设有一组视频文件,它们的文件名分别为movie001.mp4、movie002.mp4、movie003.mp4,它们的创建时间分别为2022年1月4日、2022年1月5日、2022年1月6日,我们可以将它们重命名为20220104-000000.mp4、20220105-000000.mp4、20220106-000000.mp4,代码实现如下:

rename_files("path/to/videos/folder/")

总的来说,利用Python批量重命名照片和视频文件是一件非常方便的事情,只需要获取文件的创建时间,将时间转换为字符串格式,然后通过字符串拼接来重命名文件即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python利用文件时间批量重命名照片和视频 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • 在dataframe两列日期相减并且得到具体的月数实例

    要在DataFrame两列日期相减并且得到具体的月数,可以使用 pandas 库中的 pd.to_datetime 函数和 dt 属性。 首先,使用 pd.to_datetime 将日期字符串转为 datetime 类型。然后,使用 dt 属性获取日期的年、月信息,并计算相差的月数。 示例一: 假设有一个 DataFrame,其中包含了两列日期,分别为 st…

    python 2023年6月2日
    00
  • 基于Python获取docx/doc文件内容代码解析

    Python是一种流行的编程语言,可以用于处理各种类型的文件,包括docx和doc文件。以下是基于Python获取docx/doc文件内容的详细攻略: 安装python-docx模块 首先需要安装python-docx模块。可以使用pip命令进行安装: pip install python-docx 获取docx文件内容 使用python-docx模块获取d…

    python 2023年5月14日
    00
  • python如何为list实现find方法

    在Python中,列表(list)是一种常用的数据结构,它可以存储多个元素。但是,Python中的列表并没有提供find()方法,这使得我们在查找列表中的元素时较麻烦。本文将详细讲解如何Python中的列表实现find()方法,并给出两个示例说明。 实现方法 为Python中的列表实现find()方法,可以使用Python中的类(class)来实现。具体步骤…

    python 2023年5月13日
    00
  • Python使用正则表达式实现爬虫数据抽取

    以下是Python使用正则表达式实现爬虫数据抽取的完整攻略: 步骤1:导入re和requests模块 在Python中使用正则表达式进行爬虫数据抽取需要导入re和requests模块。re模块用于处理正则表达式,requests模块用于发送HTTP请求和获取响应。可以使用以下代码导入: import re import requests 步骤2:发送HTTP…

    python 2023年5月14日
    00
  • Python虚拟环境Virtualenv使用教程

    Python虚拟环境Virtualenv使用教程 本文将详细讲解如何使用Virtualenv创建Python虚拟环境,以及在虚拟环境中安装和管理Python包。同时也会介绍为何使用虚拟环境的重要性,以及如何激活、退出虚拟环境。 什么是Python虚拟环境 Python虚拟环境是一种隔离Python环境的方法,能够在同一台机器上创建多个Python环境,每个环…

    python 2023年5月30日
    00
  • python读取hdfs并返回dataframe教程

    下面是详细讲解“Python读取HDFS并返回DataFrame教程”的完整攻略。 1. 确认Hadoop环境配置 在使用Python读取HDFS前,需要先确保Hadoop环境已正确配置,Hadoop有分布式的特性,所以要确保Python所在的机器能够与HDFS集群的各个节点进行正常通信。 2. 安装pyarrow库 pyarrow是一个能够读取和写入分布式…

    python 2023年6月3日
    00
  • python实现二维码扫码自动登录淘宝

    让我们来详细讲解如何利用Python实现二维码扫码自动登录淘宝的完整攻略。 1. 安装所需Python库 在使用Python实现二维码扫码自动登录淘宝之前,我们首先需要安装必要的Python库。具体安装方式如下: pip install pillow pip install qrcode pip install zxing pip install selen…

    python 2023年6月2日
    00
  • Python使用正则表达式实现文本替换的方法

    以下是“Python使用正则表达式实现文本替换的方法”的完整攻略: 一、问题描述 在Python中,我们可以使用正则表达式来实现文本替换。本文将详细讲解Python使用正则表达式实现文本替换的方法,以及如何在实际开发中应用。 二、解决方案 2.1 re.sub()函数 在Python中,我们可以使用re模块中的sub()函数来实现文本替换。sub()函数的语…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部