Python操作CSV格式文件的方法大全

yizhihongxing

下面是详细的讲解Python操作CSV格式文件的方法大全的完整实例教程:

CSV是什么?

CSV(Comma-Separated Values)即逗号分隔值,是一种常见的文件格式,用于存储数据。CSV文件以纯文本形式存储,每行为一条记录,每个字段之间以逗号分隔。

Python如何操作CSV文件?

Python提供了许多内置的模块来操作CSV文件,其中最常用的有 csv 模块、pandas 模块和 numpy 模块。下面将逐一介绍它们的操作方法。

CSV模块

使用 csv 模块,我们可以轻松地读取和写入CSV文件。

首先我们需要导入 csv 模块:

import csv

读取CSV文件

读取CSV文件的步骤如下:

  1. 打开文件并建立 csv.reader 对象。
  2. 使用循环遍历每一行,并对每一行进行处理。

下面是一个示例,其中 person.csv 是一个包括姓名、年龄和性别的CSV文件:

import csv

with open('person.csv', 'r') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

输出结果为:

['Name', 'Age', 'Gender']
['Tom', '18', 'Male']
['Jerry', '20', 'Female']
['Bob', '25', 'Male']

注意: 当读取CSV文件时,csv.reader 默认以逗号作为分隔符,如果你的CSV文件中使用的是其他分隔符,可以通过设置 delimiter 参数来指定分隔符。

写入CSV文件

写入CSV文件的步骤如下:

  1. 打开文件并建立 csv.writer 对象。
  2. 使用 writerow 方法写入每一行。

下面是一个示例:

import csv

with open('person.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerow(['Name', 'Age', 'Gender'])
    writer.writerow(['Jack', '30', 'Male'])
    writer.writerow(['Lucy', '25', 'Female'])

以上代码将会在当前目录下生成一个名为 person.csv 的文件,并写入了三行数据。程序运行后,输出结果为空。

注意: 在写入CSV文件时,需要设置 newline 参数为空字符串,否则可能会出现每行之间多一个空行的情况。

Pandas模块

pandas 是一个专门用于数据分析和处理的Python库。它可以以表格形式轻松处理数据,并支持读取和写入多种格式的数据文件,其中包括CSV格式。

首先我们需要安装 pandas

!pip install pandas

读取CSV文件

读取CSV文件的步骤如下:

  1. 使用 pandas.read_csv 函数读取CSV文件。
  2. 使用 head 方法查看前几行数据。

下面是一个示例:

import pandas as pd

df = pd.read_csv('person.csv')
print(df.head())

输出结果为:

    Name  Age  Gender
0    Tom   18    Male
1  Jerry   20  Female
2    Bob   25    Male

注意: 在读取CSV文件时,pandas.read_csv 函数会将第一行作为表格的列名。

写入CSV文件

写入CSV文件的步骤如下:

  1. 使用 pandas.DataFrame 函数创建一个DataFrame对象。
  2. 使用 to_csv 方法写入CSV文件。

下面是一个示例:

import pandas as pd

df = pd.DataFrame({'Name': ['Jack', 'Lucy'], 'Age': [30, 25], 'Gender': ['Male', 'Female']})
df.to_csv('person.csv', index=False)

以上代码将会在当前目录下生成一个名为 person.csv 的文件,并写入了两行数据。程序运行后,输出结果为空。

注意: 在写入CSV文件时,需要将 index 参数设置为 False,否则会在文件中输出行号。

Numpy模块

numpy 是一个专门用于科学计算的Python库。它支持各种数学运算和数组操作,并支持读取和写入多种格式的数据文件,其中包括CSV格式。

首先我们需要安装 numpy

!pip install numpy

读取CSV文件

读取CSV文件的步骤如下:

  1. 使用 numpy.genfromtxt 函数读取CSV文件。
  2. 使用 print 方法查看数据。

下面是一个示例:

import numpy as np

data = np.genfromtxt('person.csv', delimiter=',', skip_header=1, dtype=None, names=['Name', 'Age', 'Gender'])
print(data)

输出结果为:

[(b'Tom', 18, b'Male') (b'Jerry', 20, b'Female') (b'Bob', 25, b'Male')]

注意: 在使用 numpy.genfromtxt 函数时,需要通过设置 skip_header 参数来跳过列名所在的第一行,并通过设置 names 参数来指定列名的名称。

写入CSV文件

写入CSV文件的步骤如下:

  1. 使用 numpy.savetxt 函数将数据写入CSV文件。

下面是一个示例:

import numpy as np

data = np.array([('Jack', 30, 'Male'), ('Lucy', 25, 'Female')], dtype=[('Name', 'U10'), ('Age', 'i4'), ('Gender', 'U10')])
np.savetxt('person.csv', data, delimiter=',', fmt='%s,%d,%s', header='Name,Age,Gender', comments='')

以上代码将会在当前目录下生成一个名为 person.csv 的文件,并写入了两行数据。程序运行后,输出结果为空。

注意: 在写入CSV文件时,需要通过设置 fmt 参数来指定每一列的格式,通过设置 header 参数来指定列名,通过设置 comments 参数为 '' 来去除行注释。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python操作CSV格式文件的方法大全 - Python技术站

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

相关文章

  • Python 相对路径和绝对路径及写法演示

    下面是 Python 相对路径和绝对路径的详细讲解以及写法演示攻略。 相对路径和绝对路径 在 Python 中,文件的路径有两种表示方式:相对路径和绝对路径。相对路径是相对于当前文件所在的目录的路径,而绝对路径则是从文件系统的根目录开始的路径。 使用相对路径可以更方便地描述文件的位置,但是相对路径存在依赖关系,修改文件结构可能会导致代码出现运行错误。而绝对路…

    python 2023年6月2日
    00
  • python爬虫使用scrapy注意事项

    Python爬虫使用Scrapy注意事项 Scrapy是一个强大的Python爬虫框架,它可以帮助我们快速、高效地爬取网站数据。在使用Scrapy时,我们需要注意以下几点: 1. 遵守网站的爬虫规则 在使用Scrapy爬取网站数据时,我们需要遵守网站的爬虫规则。一些网站可能会禁止爬虫访问,或者限制爬虫的访问频率。如果我们不遵守这些规则,可能会导致我们的爬虫被…

    python 2023年5月15日
    00
  • python中的reduce内建函数使用方法指南

    Python中的reduce内建函数使用方法指南 reduce() 是 Python 中的一个内建函数,它逐个对可迭代对象中的元素使用指定的函数进行计算,并返回最终的结果。 语法 reduce() 函数的语法如下: reduce(function, iterable[, initializer]) 参数说明: function:计算函数,接受2个参数,第一个…

    python 2023年5月14日
    00
  • Python实现利用163邮箱远程关电脑脚本

    利用163邮箱远程关电脑脚本是指使用Python编写的一些脚本,可以通过发送邮件到指定的163邮箱,实现远程关机的功能。本文将详细讲解如何使用Python实现利用163邮箱远程关电脑脚本的完整攻略,包括以下几个方面: 创建163邮箱 配置电脑 编写Python脚本 实践示例 创建163邮箱 在使用163邮箱远程关电脑脚本之前,需要创建一个163邮箱。可以访问…

    python 2023年5月15日
    00
  • python报错 Error:Non-zero exit code的问题

    以下是关于 Python 报错 Error: Non-zero exit code 的问题的完整攻略: 问题描述 在 Python 中,有时候会遇到 Error: Non-zero exit code 的报错。本文将详细介绍这个问题的原因和解决方法。 解决方法 以下是解决 Python 报错 Error: Non-zero exit code 的步骤: 查看…

    python 2023年5月13日
    00
  • python中的 zip函数详解及用法举例

    Python中的zip函数详解及用法举例 什么是Zip函数 zip()函数是Python中一个常见的内置函数,可以做到多个列表或其他的可遍历对象进行组合,最终返回一个迭代器对象,每个元素分别来自每个可遍历对象中的对应位置。 基本语法 zip函数的基本语法格式为: zip([iterable, …]) 其中参数iterable为多个迭代器或可遍历对象。 用…

    python 2023年5月14日
    00
  • Python requests.post()方法中data和json参数的使用方法

    当需要通过 Python 发送 HTTP POST 请求时,可以使用 requests.post() 方法。该方法中有两个参数 data 和 json,它们的使用方法如下: 使用 data 参数 data 参数可以是字符串、字典或元组,这些数据将会以表单形式发送。 字符串形式的 data 参数示例: import requests url = ‘http:/…

    python 2023年5月20日
    00
  • 决策树剪枝算法的python实现方法详解

    下面是详细讲解“决策树剪枝算法的Python实现方法”的完整攻略,包括算法原理、Python实现和两个示例说明。 算法原理 决策树剪枝算法是一种用于减少决策树复杂度的技术,通过去除一些不必要的分支和叶子节点,从而提高决策树的泛化能力和预测性能。其基本思想是决策树的训练过程中,先生成一棵完整的决策树,然后通过对决策树进行剪枝,去除一些不必要的分支和叶子节点,从…

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