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

yizhihongxing

我来详细讲解一下“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日

相关文章

  • Python使用正则实现计算字符串算式

    Python使用正则实现计算字符串算式 在Python中,我们可以使用正则表达式来计算字符串算式。本文将详细讲解如何使用正则表达来计算字符串算式,包括基本语法、常用函数和两个示例说明。 基本语法 在Python中,我们可以使用re模块来处理正则表达式。以下是一些常用的正则表达式语法: \d:匹配数字。 \s:匹配空格。 \w:匹配字母、数字和下划线。 ():…

    python 2023年5月14日
    00
  • Python实现简单扫雷游戏

    Python实现简单扫雷游戏 本篇攻略将会讲解如何使用Python编写一个简单的扫雷游戏。本游戏主要分为以下几个部分:生成棋盘、放置地雷、计算数字、标记位置、判断游戏是否结束。接下来将分别对这几个部分展开讲解。 生成棋盘 使用二维列表来模拟扫雷游戏的棋盘,每个元素代表一个格子,其中0表示未翻开,-1表示地雷,其他数字则表示周围的地雷数。用以下代码来实现: i…

    python 2023年5月19日
    00
  • 详解Anaconda安装tensorflow报错问题解决方法

    以下是关于“详解Anaconda安装TensorFlow报错问题解决方法”的完整攻略: 问题描述 在使用Anaconda安装TensorFlow的过程中,可能会遇到各种报错,如“ImportError: No module named ‘_pywrap_tensorflow_internal’” “Failed building wheel for gast…

    python 2023年5月13日
    00
  • python学生信息管理系统(初级版)

    Python学生信息管理系统(初级版)攻略 简介 本文将详细讲解如何实现一个简单的Python学生信息管理系统,包括添加学生信息、修改学生信息、删除学生信息、查询学生信息等功能。 实现步骤 第一步:创建学生信息类 首先,需要创建一个学生信息类,包含学生的姓名、性别、年龄等信息。可以使用字典类型存储这些信息,代码如下: class Student: def _…

    python 2023年5月30日
    00
  • python tkinter 代码布局

    【问题标题】:python tkinter code layoutpython tkinter 代码布局 【发布时间】:2023-04-05 16:07:02 【问题描述】: 到目前为止,我会为每个界面创建不同的模块,启动屏幕,登录然后主界面并将每个模块传递给 main_window。 class MainWindow(tk.Tk): def __init_…

    Python开发 2023年4月5日
    00
  • Python新手入门webpy小应用开发

    下面详细讲解一下“Python新手入门webpy小应用开发”的完整攻略。 环境准备 首先,我们需要安装Python环境。在安装完成Python之后,我们可以通过pip安装web.py框架。使用以下命令安装: pip install web.py 基本概念 web.py框架是一个轻量级的Python web框架。它提供了一些基本的工具和功能来帮助我们快速开发w…

    python 2023年5月30日
    00
  • 解决Tensorflow安装成功,但在导入时报错的问题

    当在导入TensorFlow时遇到错误,可能是由于环境配置或版本不兼容等原因导致的。下面是解决TensorFlow安装成功但在导入时错的完整攻略: 1. 确认TensorFlow版本和版本是否兼容 TensorFlow的不同版本需要不同的Python版本支持。在安装TensorFlow之前,应该先TensorFlow版本和Python是否兼容。可以在Tens…

    python 2023年5月13日
    00
  • 详解python进行mp3格式判断

    详解Python进行MP3格式判断 在Python中,我们可以使用第三方库来完成MP3格式文件的读取和分析,常用的库有pydub和mutagen。其中,pydub可以实现文件的读取和转码,mutagen则可以读取和修改MP3文件的元数据信息。可以通过获取文件的音频流然后根据音频流的信息来判断其文件格式。 安装相关库 在开始Python进行MP3格式判断之前,…

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