百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Python进阶-Day8:文件操作与数据处理

itomcoil 2025-05-15 18:23 2 浏览

文件操作与数据处理 的进阶学习任务,旨在帮助你深入掌握文件操作和数据处理的核心技能。以下是详细的学习计划和任务安排:


学习目标

  1. 熟练使用 os、shutil 和 pathlib 模块进行文件和目录操作。
  2. 掌握 CSV 和 JSON 文件的读写操作,理解数据处理的基本流程。
  3. 通过实践项目(批量重命名文件脚本),综合运用所学知识。

学习任务分解

1. 学习 os、shutil 和 pathlib 模块

  • 学习内容os 模块:文件和目录的基本操作。 os.listdir():列出目录内容。 os.path.join():路径拼接。 os.rename():重命名文件。 os.remove():删除文件。 os.makedirs():创建目录。 shutil 模块:高级文件操作。 shutil.copy():复制文件。 shutil.move():移动文件。 shutil.rmtree():删除目录树。 pathlib 模块:现代化的路径操作。 Path.cwd():获取当前工作目录。 Path.iterdir():迭代目录内容。 Path.rename():重命名文件或目录。 Path.glob():按模式匹配文件。
  • 任务: 阅读官方文档或相关教程,理解三者区别。 编写代码测试:创建一个目录,复制一个文件到该目录,然后删除原文件。

2. 掌握 CSV 和 JSON 文件的读写

  • 学习内容csv 模块: 使用 csv.reader 和 csv.writer 读取和写入 CSV 文件。 使用 csv.DictReader 和 csv.DictWriter 处理带表头的数据。 json 模块: json.load() 和 json.dump():从文件读取/写入 JSON 数据。 json.loads() 和 json.dumps():处理 JSON 字符串。
  • 任务: 创建一个简单的 CSV 文件(例如:name, age, city),写入 5 条数据,然后读取并打印。 将上述 CSV 数据转换为 JSON 格式并保存到文件,再读取验证。

3. 练习:编写批量重命名脚本

  • 任务要求: 编写一个 Python 脚本,批量重命名指定文件夹中的文件。 重命名规则示例:将文件名改为 prefix_序号.扩展名(如 photo_001.jpg)。 支持用户输入文件夹路径和前缀。 添加错误处理(如文件不存在、权限不足等)。
  • 实现步骤: 使用 pathlib.Path 获取文件夹中的所有文件。 遍历文件列表,生成新文件名。 使用 Path.rename() 执行重命名操作。 添加异常处理和用户交互。

学习计划

  • 上午(2-3 小时): 学习 os、shutil 和 pathlib,完成模块测试代码。
  • 下午(2-3 小时): 学习 CSV 和 JSON 文件操作,完成读写练习。
  • 晚上(2-3 小时): 实现批量重命名脚本,测试并优化。

示例代码:批量重命名脚本

以下是一个基础实现,供你参考并扩展:

python

from pathlib import Path

def batch_rename_files(folder_path, prefix="file"):
    try:
        # 转换为 Path 对象
        folder = Path(folder_path)
        if not folder.exists() or not folder.is_dir():
            raise ValueError("无效的文件夹路径")

        # 获取所有文件
        files = [f for f in folder.iterdir() if f.is_file()]
        if not files:
            print("文件夹中没有文件")
            return

        # 批量重命名
        for i, file in enumerate(files, start=1):
            new_name = f"{prefix}_{i:03d}{file.suffix}"  # 如 file_001.jpg
            new_path = folder / new_name
            file.rename(new_path)
            print(f"重命名: {file.name} -> {new_name}")

    except Exception as e:
        print(f"发生错误: {e}")

if __name__ == "__main__":
    folder_path = input("请输入文件夹路径: ")
    prefix = input("请输入文件名前缀(默认 'file'): ") or "file"
    batch_rename_files(folder_path, prefix)

进阶挑战(可选)

  1. 修改脚本,支持按文件修改时间排序后重命名。
  2. 添加正则表达式支持,允许用户指定重命名规则(如提取文件名中的数字)。
  3. 将重命名操作记录到 CSV 文件中,包含旧名和新名。



学习资源建议

  • Python 官方文档:os、shutil、pathlib、csv、json。
  • 实践环境:本地创建一个测试文件夹,放入一些文件(如图片、文本)。

通过今天的任务,你将掌握 Python 文件操作和数据处理的核心技能,并具备编写实用脚本的能力。完成后,尝试将脚本应用到实际场景中,进一步巩固所学!有什么问题,随时问我。

相关推荐

Python 上下文管理器魔法手册:with 语句的终极艺术

对话实录小白:(抓狂)我写了f=open("data.txt"),结果忘记关闭文件了!专家:(掏出魔法书)用with语句,文件自动关闭,永不泄露!上下文管理器基础三连击1.基...

【验证码逆向专栏】某安登录流程详解与验证码逆向分析与识别

声明本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经许可禁...

Python常用内置模块介绍——文件与系统操作详解

Python提供了多个强大的内置模块用于文件和系统操作,下面我将详细介绍最常用的几个模块及其核心功能。1.os模块-操作系统交互os模块提供了与操作系统交互的接口,包括文件/目录操作、进程管理、环...

21-Python-文件操作

在Python中,文件操作是非常重要的一部分,它允许我们读取、写入和修改文件。下面将详细讲解Python文件操作的各个方面,并给出相应的示例。1-打开文件在Python中,使用`open()`函数来打...

Python 开发工程师必会的 5 个文件操作库

在Python开发的世界里,文件操作是一项基础且高频的任务。从日常的数据处理到复杂的项目部署,熟练掌握文件操作库能让我们的开发工作事半功倍。本文和大家聊聊我眼中开发必备的5个文件操作库,它们各...

你应该知道的 50 个 Python 单行代码

使用Python总是可以轻松完成一些特定任务,这让人惊奇。一些比较繁琐的任务可以使用Python在单行代码中完成。下面是我收集的50个Python单行代码实例。1.移位词:猜字母的个...

Python10个了不起的10个库,用于文件操作、接口测试

日常接口测试中需要大量的操作文件,譬如:用户登录信息、数据库信息等等。了解下方10个文件操作库,可以快速提升在工作中的效率。os:提供了与操作系统交互的功能,包括文件和目录操作、进程管理等。示例代码参...

手把手教你开发智能备份神器,小白也能30分钟搞定!

一、你的电脑是不是也总在“重复备份”?每次备份文件夹时,是不是总觉得“好麻烦”?特别是遇到几十G的文件库,整个备份过程像在坐过山车——明明大部分文件都没改,却还要从头来一遍!今天,我用Python开发...

几行代码教你zip打包

01准备有时我们不想去手动一个个去操作,然后傻等他打包完,python依赖库zipfile很方便地帮助我们封装了解压压缩,shutil用于文件目录处理,方法类似于linux命令。1、安装pipin...

Python操作目录

获取当前工作目录获取执行命令的位置路径拼接路径拆分文件重命名删除文件复制文件遍历文件夹下的文件判断文件是否存在判断目录是否存在获取当前工作目录importsysprint(sys.path[0]...

Python 开发工程师必会的 5 个系统命令操作库

当我们需要编写自动化脚本、部署工具、监控程序时,熟练操作系统命令几乎是必备技能。今天就来聊聊我在实际项目中高频使用的5个系统命令操作库,这些可都是能让你效率翻倍的"瑞士军刀"。一...

文件备份用Python,照着复制粘贴代码就可以了

引言在日常开发和运维工作中,数据安全尤为重要,定期备份重要文件是防范数据丢失的有效手段之一。本文将详细介绍如何使用Python实现一个简单的定时备份脚本,该脚本可以按照设定周期自动将指定文件夹或文件复...

2025年必学的Python自动化办公的15个实用脚本

2025年必学的Python自动化办公的6个实用脚本及其代码示例。这些脚本涵盖了文件备份、邮件通知、网页抓取、报告生成、数据处理和团队协作等多个场景,帮助用户高效完成日常办公任务。1.自动备份文件自...

一天学一点,今天学习掌握Python:异常处理与文件操作全攻略

这一笔记记录了我学习python的异常和文件的操作,这也是针对Python异常和文件操作教程的进一步优化建议和注意事项:异常处理优化1.避免过度捕获异常o不要为了捕获异常而捕获异常,应根据实际需求...

「亲测可用」如何用python脚本批量旋转图片为任意角度?

最近在训练图片方向分类器,需要对原始图片进行批量旋转操作,那如何用python脚本实现批量旋转图片为任意角度呢?此处,以将我的头像旋转90度为例进行演示。实现图片批量旋转的python源代码如下:#-...