Python读取CSV文件的几种方法!

1、使用 csv 模块

首先,你需要导入`csv`模块:

import csv

接下来,你可以使用`csv.reader()`函数来读取CSV文件。假设你的CSV文件名为`data.csv`,它的内容如下:

Name, Age, Salary
John, 25, 5000
Alice, 30, 6000
Bob, 35, 7000

你可以按照以下方式读取CSV文件中的数据:

with open('data.csv') as file:
csv_reader = csv.reader(file)
for row in csv_reader:
print(row)

这段代码会一行一行地读取CSV文件中的数据,并将每一行的数据以列表的形式打印出来。对于上述的CSV文件,执行以上代码会得到以下结果:

['Name', ' Age', ' Salary']
['John', ' 25', ' 5000']
['Alice', ' 30', ' 6000']
['Bob', ' 35', ' 7000']

你也可以选择性地跳过CSV文件的第一行标题行,使用`next()`函数实现:

with open('data.csv') as file:
csv_reader = csv.reader(file)
next(csv_reader) # 跳过标题行
for row in csv_reader:
print(row)

执行以上代码,就会得到排除标题行的结果:

['John', ' 25', ' 5000']
['Alice', ' 30', ' 6000']
['Bob', ' 35', ' 7000']

除了`csv.reader()`函数,你还可以使用`csv.DictReader()`函数来读取CSV文件,并将每行数据作为一个字典返回。这样,在循环中你可以通过键名来访问每个字段的值:

with open('data.csv') as file:
csv_reader = csv.DictReader(file)
for row in csv_reader:
print(row['Name'], row['Age'], row['Salary'])

以上代码会输出每个人的姓名、年龄和薪水:

John 25 5000
Alice 30 6000
Bob 35 7000

2.使用 numpy 库

可以使用numpy库中的genfromtxt函数来读取CSV文件,下面是一个示例代码:

import numpy as np
# 读取CSV文件
data = np.genfromtxt('data.csv', delimiter=',')
# 打印读取的数据``print(data)

在上述代码中,genfromtxt函数接收两个参数:文件名和分隔符。你可以将data.csv替换为你要读取的CSV文件的路径。默认情况下,genfromtxt函数会假设CSV文件中的数据都是浮点数,并且会自动处理缺失数据。如果你想指定数据类型或处理其他选项,可以在函数调用中设置相应的参数。

3.pandas库

pandas库读取CSV文件非常方便。下面是一个示例代码:

import pandas as pd
# 读取CSV文件
data = pd.read_csv('data.csv')
# 打印读取的数据``print(data)

这就是使用Python读取CSV文件的方法。你可以根据实际的情况对读取到的数据进行处理和分析。

最后 如果你对Python感兴趣的话,可以试试我整理的这份Python全套学习资料,点击这里领取!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!
Python所有方向的学习路线图,清楚各个方向要学什么东西
100多节Python课程视频,涵盖必备基础、爬虫和数据分析
100多个Python实战案例,学习不再是只会理论
华为出品独家Python漫画教程,手机也能学习
历年互联网企业Python面试真题,复习时非常方便******

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/bf698a7d4b39482e9a6c54f733945ac9.jpeg#pic_center在这里插入图片描述

当您在 PyCharm 中遇到无法读取 CSV 文件的问题时,这可能是由多种原因引起的。接下来我会详细介绍常见的几种情况及其解决方案: ### 1. **检查文件路径** - 确保您的CSV文件路径是正确的,并且PyCharm项目能够访问该路径。可以尝试使用绝对路径而不是相对路径来测试是否能解决问题。 - 如果使用的是相对路径,请确认它是相对于当前工作目录的。 ```python import os # 打印当前工作目录,确保文件路径正确 print(os.getcwd()) ``` ### 2. **安装必要的库** - Python 提供了内置模块如 `csv` 来处理CSV文件,但如果需要更强大的功能(例如自动解析、数据清洗等),建议使用第三方库 `pandas` 或者 `numpy`。 - 检查是否已经安装了相关的Python包: ```bash pip install pandas ``` ### 3. **代码示例:使用 Pandas 读取 CSV** 如果您选择使用Pandas库来读取CSV文件,下面是一个简单的例子: ```python import pandas as pd try: # 使用绝对路径或确认相对路径正确无误 df = pd.read_csv('path/to/your/file.csv') print(df.head()) # 输出前五行数据 except FileNotFoundError: print("找不到指定的文件") except Exception as e: print(f"发生错误: {e}") ``` ### 4. **编码问题** - 如果您的CSV文件包含非ASCII字符,则可能会导致编码解码失败的情况出现。此时可以在读取过程中指明合适的编码格式,比如UTF-8或其他适合的编码方案。 ```python df = pd.read_csv('file.csv', encoding='utf-8') ``` ### 5. **权限问题** - 还有一种可能性是因为操作系统级别上对某些文件夹或者磁盘分区缺乏足够的访问权限而造成的。请保证程序运行所在的用户账号拥有足够高的权限去打开目标位置下的所有资源。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值