Python对CSV、Excel、txt、dat文件的处理

yizhihongxing

CSV、Excel、txt、dat文件是常见的数据存储格式,Python具备较强的处理这些文件的能力。下面,我将为大家分享Python处理这些格式文件的完整攻略。

CSV文件的处理

CSV文件为逗号分隔值文件,其内容以逗号分隔的文本数据形式存储。Python通过csv模块实现对CSV文件的处理。

CSV文件的读取

假设我们有一个名为example.csv的文件,文件内容如下所示:

id,name,age
1,Alice,18
2,Bob,21
3,Charlie,24

要读取该文件,代码如下所示:

import csv

with open('example.csv', 'r', encoding='utf-8') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

通过csv.reader()方法获取文件的读取器,每次读取文件的一行,返回一个列表。

输出结果为:

['id', 'name', 'age']
['1', 'Alice', '18']
['2', 'Bob', '21']
['3', 'Charlie', '24']

CSV文件的写入

写CSV文件的过程与读取类似,只需将读取器换成写入器即可。假设我们要将数据写入名为example_write.csv的文件中,代码如下所示:

import csv

data = [
    ('id', 'name', 'age'),
    (1, 'Alice', 18),
    (2, 'Bob', 21),
    (3, 'Charlie', 24)
]

with open('example_write.csv', 'w', newline='', encoding='utf-8') as f:
    writer = csv.writer(f)
    for row in data:
        writer.writerow(row)

以上代码中,使用csv.writer()方法获取写入器,然后使用writerow()方法写入数据。

Excel文件的处理

Python通过openpyxl库来处理Excel文件,该库支持.xlsx和.xlsm格式的文件。

Excel文件的读取

假设我们有一个名为example.xlsx的文件,文件内容如下所示:

id name age
1 Alice 18
2 Bob 21
3 Charlie 24

要读取该文件中的数据,代码如下所示:

from openpyxl import load_workbook

wb = load_workbook('example.xlsx')

sheet = wb.active

for row in sheet.iter_rows(min_row=2, values_only=True):
    print(row)

以上代码中,首先使用load_workbook()方法加载Excel文件,然后使用active属性指定当前活动表格,最后使用iter_rows()方法以生成器的形式返回指定范围内的行数据。

输出结果为:

(1, 'Alice', 18)
(2, 'Bob', 21)
(3, 'Charlie', 24)

Excel文件的写入

Excel文件的写入需要创建一个Workbook对象,再创建Sheet对象,最后对单元格进行赋值。假设我们将数据写入到名为example_write.xlsx的文件中,代码如下所示:

from openpyxl import Workbook

data = [
    ('id', 'name', 'age'),
    (1, 'Alice', 18),
    (2, 'Bob', 21),
    (3, 'Charlie', 24)
]

wb = Workbook()
sheet = wb.active

for row in data:
    sheet.append(row)

wb.save('example_write.xlsx')

以上代码中,首先创建Workbook对象,然后使用active属性指定当前活动表格,最后使用append()方法写入数据。

txt和dat文件的处理

Python对txt和dat文件的处理方式相同,均使用内置函数open()打开文件,并使用read()和write()方法读取和写入数据。

txt和dat文件的读取

假设我们有一个名为example.txt的txt文件,文件内容如下所示:

id name age
1 Alice 18
2 Bob 21
3 Charlie 24

要读取该文件中的数据,代码如下所示:

with open('example.txt', 'r', encoding='utf-8') as f:
    for line in f:
        print(line.strip().split())

以上代码中,open()方法指定了文件的读取模式,然后通过循环读取文件中的每一行,并通过strip()方法去掉每一行前后的空格,再通过split()方法将每一行数据分割成列表返回。

输出结果为:

['id', 'name', 'age']
['1', 'Alice', '18']
['2', 'Bob', '21']
['3', 'Charlie', '24']

txt和dat文件的写入

要将数据写入txt和dat文件中,需要使用open()方法,并指定写入模式,代码如下所示:

data = [
    'id name age',
    '1 Alice 18',
    '2 Bob 21',
    '3 Charlie 24'
]

with open('example_write.txt', 'w', encoding='utf-8') as f:
    for line in data:
        f.write(line + '\n')

写入数据与读取类似,每次写入完一行数据,都需要使用write()方法,并添加换行符。

经过以上介绍,我们了解了Python对CSV、Excel、txt、dat文件的处理方式和方法,可以根据文件类型选择相应的库或内置函数进行处理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python对CSV、Excel、txt、dat文件的处理 - Python技术站

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

相关文章

  • 开发 python wsgi 应用程序时 Apache 重启

    【问题标题】:Apache restart when developing python wsgi apps开发 python wsgi 应用程序时 Apache 重启 【发布时间】:2023-04-03 10:28:01 【问题描述】: 我正在评估用于 Web 开发的 python (mod_wsgi),并注意到在 Windows 上我必须在更改我的 py…

    Python开发 2023年4月8日
    00
  • Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str

    PythonBeautifulSoup[解决方法]TypeError:list indices must be integers or slices, not str 在使用Python的BeautifulSoup库进行网页解析时,有时会遇到TypeError:list indices must be integers or slices, not的错误。本…

    python 2023年5月13日
    00
  • python持久化存储文件操作方法

    下面是关于Python持久化存储文件操作方法的完整攻略: 1. 什么是Python持久化存储? Python持久化存储是指将Python程序中的数据(如变量、对象、数据结构等)保存到本地磁盘或其它外部存储设备,以便下次程序运行时能够重新读取这些数据。这可以方便用户保存或共享程序中的数据,也可以加快程序运行速度。 在Python中,常用的持久化存储方法包括:文…

    python 2023年6月2日
    00
  • python实现AHP算法的方法实例(层次分析法)

    Python实现AHP算法的方法实例(层次分析法) 层次分析法(AHP)是一种常用的多准则决策分析方法,它可以用于确定决策问题中各个因素权。在Python中可以使用多种库实现AHP算法,包括ahpy、pyanp等。本文将详细讲解Python实现AHP算法的实例,包括算法原理、Python实现过程和示例。 算法原理 AHP算法的基本思想是将决问题分解多个层次,…

    python 2023年5月13日
    00
  • Python加载文件内容的两种实现方式

    当我们需要在Python代码中加载文件内容时,通常有两种方法来实现。 1. 使用with语句读取文件 使用with语句读取文件是一种常用的方法,它可以保证在读取文件结束后,文件会被自动关闭。具体步骤如下: with open(‘sample.txt’, ‘r’) as f: content = f.read() print(content) 上面的代码中,我…

    python 2023年6月3日
    00
  • Python常用的json标准库

    下面是Python常用的json标准库的完整攻略。 什么是JSON? JSON 全称为 JavaScript Object Notation,是一种轻量级数据交换格式。它基于 ECMAScript 的一个子集。 JSON 格式最初由 Douglas Crockford 发明,它是一种语法简洁清晰的数据格式,并且易于读写,同时也易于机器解析和生成。 JSON …

    python 2023年6月3日
    00
  • python自动化测试之从命令行运行测试用例with verbosity

    下面是python自动化测试从命令行运行测试用例with verbosity的完整攻略: 1. 创建测试用例 首先,我们需要创建python的测试用例文件,用于测试代码的正确性。示例代码如下: # test_sample.py def test_addition(): assert 1 + 1 == 2 def test_subtraction(): ass…

    python 2023年5月19日
    00
  • 对Python中plt的画图函数详解

    对Python中plt的画图函数详解 在Python中,matplotlib是一个非常重要的绘图库,其中plt模块是matplotlib中最常用的模块之一。本篇攻略将介绍plt中最常用的几个函数,并通过示例说明如何在Python中使用这些函数。 1. 绘制折线图:plot() import matplotlib.pyplot as plt import nu…

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