python中如何读取csv文件内容

在Python中,有多种方法可以读取CSV文件的内容,以下是一些常用的方法及其详细步骤:

网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了嘉善免费建站欢迎大家使用!

1、使用内置的csv模块

Python的csv模块提供了一个Reader类,可以用来读取CSV文件,以下是一个简单的示例:

import csv
打开CSV文件
with open('example.csv', 'r', encoding='utf8') as csvfile:
    # 创建一个CSV阅读器
    csv_reader = csv.reader(csvfile)
    # 遍历CSV文件的每一行
    for row in csv_reader:
        print(row)

在这个示例中,我们首先导入了csv模块,我们使用open()函数以只读模式(’r’)打开CSV文件,注意,我们需要指定文件的编码方式,因为CSV文件中可能包含非ASCII字符,接下来,我们创建了一个CSV阅读器对象,并使用for循环遍历了CSV文件的每一行,每一行都被表示为一个列表,其中的元素是CSV文件中的列。

2、使用pandas库

pandas是一个强大的数据分析库,它提供了一个DataFrame类,可以用来处理结构化数据,以下是如何使用pandas读取CSV文件的示例:

import pandas as pd
读取CSV文件
data = pd.read_csv('example.csv')
显示前5行数据
print(data.head())

在这个示例中,我们首先导入了pandas库,并将其重命名为pd,我们使用pd.read_csv()函数读取CSV文件,并将结果存储在一个名为data的DataFrame对象中,我们使用data.head()函数显示了前5行数据。

3、使用numpy库

numpy是一个用于处理数组数据的库,它也提供了一个loadtxt()函数,可以用来读取CSV文件,以下是如何使用numpy读取CSV文件的示例:

import numpy as np
读取CSV文件
data = np.loadtxt('example.csv', delimiter=',')
显示数组内容
print(data)

在这个示例中,我们首先导入了numpy库,并将其重命名为np,我们使用np.loadtxt()函数读取CSV文件,并将结果存储在一个名为data的数组对象中,注意,我们需要指定分隔符(delimiter),因为CSV文件中的列是以逗号分隔的,我们使用print()函数显示了数组的内容。

4、使用其他库(如openpyxl、xlrd等)

除了上述方法外,还有一些其他库也可以用于读取CSV文件,openpyxl和xlrd库可以用来读取Excel文件中的CSV数据,以下是如何使用openpyxl读取Excel文件中的CSV数据的示例:

from openpyxl import load_workbook
import csv
加载Excel工作簿
workbook = load_workbook('example.xlsx')
获取工作表
worksheet = workbook.active
将工作表转换为CSV格式的数据
with open('example.csv', 'w', newline='', encoding='utf8') as csvfile:
    csv_writer = csv.writer(csvfile)
    for row in worksheet.iter_rows():
        csv_writer.writerow([cell.value for cell in row])

在这个示例中,我们首先从openpyxl库中导入了load_workbook()函数,我们使用load_workbook()函数加载了一个Excel工作簿,并将其存储在一个名为workbook的对象中,接下来,我们获取了工作簿中的第一个工作表,并将其存储在一个名为worksheet的对象中,我们使用csv.writer()函数创建了一个CSV写入器对象,并使用for循环遍历了工作表中的每一行,每一行都被表示为一个列表,其中的元素是工作表中的单元格值,我们将这些值写入到一个新的CSV文件中。

新闻名称:python中如何读取csv文件内容
标题URL:http://www.shufengxianlan.com/qtweb/news10/219010.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联