Python中CSV文件(逗号分割)实战操作指南

下面是“Python中CSV文件(逗号分割)实战操作指南”的完整攻略:

什么是CSV文件?

CSV(Comma Separated Values)文件是一种普遍的电子表格或数据库中存储数据的格式。CSV文件通常以逗号分隔,每行表示一个数据行,每列表示数据的不同属性。文件可以在电子表格程序(如Microsoft Excel)或文本编辑器中打开。

读取CSV文件

在Python中,打开CSV文件可以使用内置库csv。

首先要导入csv库:

import csv

接下来,使用csv.reader()方法读取CSV文件内容。下面是一个读取CSV文件data.csv的例子。该文件的第一行是表头,其余行是数据。

with open('data.csv', 'r') as csvfile:
    reader = csv.reader(csvfile)
    header = next(reader)  # 读取表头
    for row in reader:
        print(row)

上述代码中,with open('data.csv', 'r') as csvfile: 打开CSV文件data.csv并以只读模式打开。使用csv.reader()读取文件。调用next()方法后,可以跳过表头并从第二行开始读取数据行。

在循环中,可以通过row来依次访问每行数据。可根据需要进行进一步处理。

写入CSV文件

同样是使用csv库,利用csv.writer()方法和writerow()方法写入CSV文件。下面是一个将二维列表写入到CSV文件output.csv的例子。

import csv

data = [
    ['Name', 'Age', 'Gender'],
    ['Tom', '25', 'Male'],
    ['Alice', '30', 'Female'],
    ['Bob', '20', 'Male']
]

with open('output.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    for row in data:
        writer.writerow(row)

上述代码中,with open('output.csv', 'w', newline='') as csvfile: 打开CSV文件output.csv并以写入模式打开。使用csv.writer()方法创建一个写入器writer。在循环中,将每行数据写入文件中。

示例1:读取成绩单并计算平均分

以下是一个从CSV文件中读取成绩单并计算平均分的示例。假设成绩单在文件scores.csv中,格式为“姓名,数学成绩,语文成绩,英语成绩”。

import csv

with open('scores.csv', 'r') as csvfile:
    reader = csv.reader(csvfile)
    next(reader)  # 跳过表头
    total_score = 0
    num_students = 0
    for row in reader:
        math_score = int(row[1])
        chinese_score = int(row[2])
        english_score = int(row[3])
        total_score += math_score + chinese_score + english_score
        num_students += 1

avg_score = total_score / num_students
print('平均成绩为:%.2f' % avg_score)

上述代码中,打开CSV文件scores.csv并使用csv.reader()方法读取文件。跳过表头并循环读取每行数据。将每个学生的数学、语文、英语成绩进行加法操作并保存总分,统计学生人数。

最后计算平均成绩并输出。

示例2:将字典写入CSV文件

以下是一个将字典写入CSV文件的示例。将字典内容保存到文件data.csv中。

import csv

data = [
    {'Name': 'Tom', 'Age': 25, 'Gender': 'Male'},
    {'Name': 'Alice', 'Age': 30, 'Gender': 'Female'},
    {'Name': 'Bob', 'Age': 20, 'Gender': 'Male'}
]

with open('data.csv', 'w', newline='') as csvfile:
    fieldnames = ['Name', 'Age', 'Gender']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

    writer.writeheader()
    for row in data:
        writer.writerow(row)

上述代码中,创建字典数据,并使用csv.DictWriter()方法和writerow()方法将字典写入到CSV文件中。在创建writer对象时,需要给出CSV文件中每一列的字段名。先写入CSV文件的表头,之后循环写入每一行数据。

以上是Python中CSV文件(逗号分割)的实战操作指南。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python中CSV文件(逗号分割)实战操作指南 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Python PyWebIO实现网页版数据查询器

    下面我将详细讲解如何用Python PyWebIO实现网页版数据查询器。 Python PyWebIO实现网页版数据查询器攻略 1. 简介 PyWebIO是一个可以在浏览器中运行的Python库,专注于Web应用程序的开发和交互。使用PyWebIO可以轻松地将Python脚本转换为交互式Web应用程序,不需要任何前端开发知识。 在本攻略中,我们将使用PyWe…

    python 2023年6月6日
    00
  • Python实现提取Excel指定关键词的行数据

    下面是关于Python实现提取Excel指定关键词的行数据的完整实例教程。 1. 准备工作 安装pandas库:在命令行中输入pip install pandas即可安装。 准备Excel文件:需要读取的Excel文件,可以用pandas库来读取,不需要作其它特殊操作。 2. 从Excel中提取指定关键词的行数据 2.1. 读取Excel文件 首先,需要导入…

    python 2023年5月13日
    00
  • python实现kmp算法的实例代码

    Python实现KMP算法详解 KMP算法是一种字符串匹配算法,它的核心思想是利用已知信息避免无效的比较,从而提高匹配效率。在Python中,可以使用简单的代码实现KMP算法。本文将详细讲解Python实现KMP算法的过程,并提供两个示例说明。 KMP算法原理 KMP算法的基本原理是利用已知信息避免无效的比较,从而提高匹配效率。具体过程如下: 预处理模式串,…

    python 2023年5月13日
    00
  • 聊聊python中的异常嵌套

    当我们在编写 Python 程序时,总是存在一定的风险导致程序出现错误,比如读写文件失败,或者函数传参错误等。此时,Python 提供了异常机制来处理这些错误。在某些情况下,我们可能会遇到多个异常嵌套的情况,也就是说,程序由于某个异常导致了另一个异常发生,这就需要我们嵌套处理异常。下面我来给大家分享一些处理 Python 中异常嵌套的技巧。 1.异常嵌套的基…

    python 2023年5月13日
    00
  • 基于python list对象中嵌套元组使用sort时的排序方法

    在Python中,可以使用sort()方法对列表进行排序。当列表中的元素是元组时,sort()方法默认按照元组中第一个元素的大小进行排序。如果第一个元素相同,则按照第二个元素大小进行排序,以此类推。下面是一个示例,演示了如何对包含元组的列表进行排序: # 对包元组的列表进行排序 lst = [(3, 2), (1, 4), (2, 3), (1, 2)] l…

    python 2023年5月13日
    00
  • Python ord函数()案例详解

    Python ord() 函数案例详解 什么是 Python ord() 函数? Python ord() 函数是 Python 标准库中内置的一个函数,该函数用于返回指定 Unicode 字符的十进制整数表示。也就是说,该函数接收一个单个的 Unicode 字符作为参数,并返回这个字符对应的 Unicode 码位的整数值。 ord() 函数的语法 ord(…

    python 2023年5月14日
    00
  • 如何利用python实现kmeans聚类

    当我们需要对大量数据进行分类时,k-means聚类是一种常用的方法。Python语言有很多扩展库可以方便地实现k-means聚类。下面是一些利用Python实现k-means聚类的攻略: 准备数据 首先需要准备数据,k-means聚类是根据欧几里得距离进行数据点的分类,所以确保你的数据是数值数据。一般格式如下: 数据点编号 x1 x2 … xn 1 1.…

    python 2023年6月6日
    00
  • Python 函数list&read&seek详解

    以下是详细讲解“Python函数list&read&seek详解”的完整攻略。 list函数 list函数可以将一个可迭代对象转换为一个列表。例如: s = ‘hello’ lst = list(s) print(lst) # 输出[‘h’, ‘e’, ‘l’, ‘l’, ‘o’] 上述代码将字符串s转换为一个列表lst。 read函数 re…

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