11.3 用Python处理常见文件

欢迎来到我的博客,很高兴能够在这里和您见面!欢迎订阅相关专栏:
工💗重💗hao💗:野老杂谈
⭐️ 全网最全IT互联网公司面试宝典:收集整理全网各大IT互联网公司技术、项目、HR面试真题.
⭐️ AIGC时代的创新与未来:详细讲解AIGC的概念、核心技术、应用领域等内容。
⭐️ 全流程数据技术实战指南:全面讲解从数据采集到数据可视化的整个过程,掌握构建现代化数据平台和数据仓库的核心技术和方法。
⭐️ 构建全面的数据指标体系:通过深入的理论解析、详细的实操步骤和丰富的案例分析,为读者提供系统化的指导,帮助他们构建和应用数据指标体系,提升数据驱动的决策水平。
⭐️《遇见Python:初识、了解与热恋》 :涵盖了Python学习的基础知识、进阶技巧和实际应用案例,帮助读者从零开始逐步掌握Python的各个方面,并最终能够进行项目开发和解决实际问题。

摘要

在这篇文章中,我们将探索如何使用 Python 处理各种常见的文件格式。从 CSV、JSON 到 Excel 文件,我们将用生动的故事和幽默的语言来讲解如何读取、写入和处理这些文件。通过实际的代码示例和图示,您将掌握处理这些文件格式的技能,并能在实际开发中应对不同的数据需求。


处理 CSV 文件

CSV(逗号分隔值)文件就像是数据界的瑞士军刀——它们简单、通用,而且几乎无处不在。无论你是数据分析师、软件开发人员,还是 Excel 爱好者,你都会与 CSV 文件打交道。那么,如何用 Python 处理这些文件呢?让我们一起来看看。

CSV 文件的基本操作

假设我们有一个名为 data.csv 的文件,它包含了一些学生的成绩信息。文件内容如下:

姓名,数学,英语,科学
张三,90,80,85
李四,70,60,75
王五,85,95,90

我们可以使用 Python 的 csv 模块来读取和写入 CSV 文件:

import csv

# 读取 CSV 文件
with open('data.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

# 写入 CSV 文件
data = [
    ['姓名', '数学', '英语', '科学'],
    ['赵六', 88, 76, 92],
    ['孙七', 95, 89, 85]
]

with open('new_data.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

这里,我们用 csv.reader 读取文件,用 csv.writer 写入文件。很简单吧?就像用笔记本记录数据一样。

处理 JSON 文件

JSON(JavaScript 对象表示法)是一种轻量级的数据交换格式,适用于结构化数据。你可以把 JSON 想象成是你家里的超级市场:整齐地排列着各种物品(数据),随时可以拿来用。

JSON 文件的基本操作

假设我们有一个名为 data.json 的文件,内容如下:

{
    "students": [
        {"name": "张三", "math": 90, "english": 80, "science": 85},
        {"name": "李四", "math": 70, "english": 60, "science": 75}
    ]
}

我们可以使用 Python 的 json 模块来读取和写入 JSON 文件:

import json

# 读取 JSON 文件
with open('data.json', 'r') as file:
    data = json.load(file)
    print(data)

# 写入 JSON 文件
new_data = {
    "students": [
        {"name": "王五", "math": 85, "english": 95, "science": 90},
        {"name": "赵六", "math": 88, "english": 76, "science": 92}
    ]
}

with open('new_data.json', 'w') as file:
    json.dump(new_data, file, indent=4)

通过 json.load 读取 JSON 文件,通过 json.dump 写入 JSON 文件。JSON 格式的灵活性和可读性使得它在数据交换中非常受欢迎。

处理 Excel 文件

Excel 文件是办公室中最常见的数据存储格式之一。如果 CSV 是数据界的瑞士军刀,那么 Excel 文件就是它的多功能工具箱。使用 Python 处理 Excel 文件,我们可以依靠 pandasopenpyxl 等库来轻松搞定。

Excel 文件的基本操作

假设我们有一个名为 data.xlsx 的文件,它包含了学生成绩的信息。我们可以使用 pandas 库来读取和写入 Excel 文件:

import pandas as pd

# 读取 Excel 文件
df = pd.read_excel('data.xlsx')
print(df)

# 写入 Excel 文件
new_data = {
    '姓名': ['王五', '赵六'],
    '数学': [85, 88],
    '英语': [95, 76],
    '科学': [90, 92]
}
df = pd.DataFrame(new_data)
df.to_excel('new_data.xlsx', index=False)

在这个例子中,我们用 pandasread_excel 读取文件,用 to_excel 写入文件。pandas 使数据操作变得简单又高效。

处理 XML 文件

XML(可扩展标记语言)是一种用于存储和传输数据的格式。它就像一个复杂的文件夹结构,可以存储嵌套的、层次化的数据。

XML 文件的基本操作

假设我们有一个名为 data.xml 的文件,内容如下:

<students>
    <student>
        <name>张三</name>
        <math>90</math>
        <english>80</english>
        <science>85</science>
    </student>
    <student>
        <name>李四</name>
        <math>70</math>
        <english>60</english>
        <science>75</science>
    </student>
</students>

我们可以使用 Python 的 xml.etree.ElementTree 模块来读取和写入 XML 文件:

import xml.etree.ElementTree as ET

# 读取 XML 文件
tree = ET.parse('data.xml')
root = tree.getroot()

for student in root.findall('student'):
    name = student.find('name').text
    math = student.find('math').text
    print(f'姓名: {name}, 数学: {math}')

# 写入 XML 文件
students = ET.Element('students')

student1 = ET.SubElement(students, 'student')
ET.SubElement(student1, 'name').text = '王五'
ET.SubElement(student1, 'math').text = '85'

student2 = ET.SubElement(students, 'student')
ET.SubElement(student2, 'name').text = '赵六'
ET.SubElement(student2, 'math').text = '88'

tree = ET.ElementTree(students)
tree.write('new_data.xml')

使用 xml.etree.ElementTree 可以轻松地解析和创建 XML 文件,让我们能够处理层次化的数据结构。

处理其他文件格式(如 YAML 和 HDF5)

除了上述文件格式,还有一些其他常见的文件格式,如 YAML 和 HDF5。YAML(YAML 不是标记语言)是一种易于读写的数据序列化格式,而 HDF5(Hierarchical Data Format 5)是一种用于存储和管理大规模数据的格式。

YAML 文件的基本操作

使用 pyyaml 库来处理 YAML 文件:

import yaml

# 读取 YAML 文件
with open('data.yaml', 'r') as file:
    data = yaml.safe_load(file)
    print(data)

# 写入 YAML 文件
new_data = {
    'students': [
        {'name': '王五', 'math': 85, 'english': 95, 'science': 90},
        {'name': '赵六', 'math': 88, 'english': 76, 'science': 92}
    ]
}

with open('new_data.yaml', 'w') as file:
    yaml.dump(new_data, file)
HDF5 文件的基本操作

使用 h5py 库来处理 HDF5 文件:

import h5py

# 读取 HDF5 文件
with h5py.File('data.h5', 'r') as file:
    data = file['dataset'][:]
    print(data)

# 写入 HDF5 文件
with h5py.File('new_data.h5', 'w') as file:
    file.create_dataset('dataset', data=[1, 2, 3, 4, 5])

结语

在处理各种常见文件格式时,Python 提供了强大的工具和库,帮助我们高效地读取、写入和处理数据。无论是 CSV、JSON、Excel、XML 还是其他格式,掌握这些技能将使你的数据处理工作变得轻松又有趣。希望通过本篇文章,你能够掌握这些文件格式的处理技巧,并在实际工作中运用自如。

标签
  • 文件格式
  • CSV
  • JSON
  • Excel
  • XML

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

野老杂谈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值