当前位置: 首页 > 开发者资讯

python怎么读取csv文件?

  Python读取外部CSV格式文件的方法有多种,常用的方法包括使用内置的csv模块、pandas库以及numpy库等。Python内置的csv模块适合处理结构简单的CSV文件。通过csv.reader逐行读取数据,或用csv.DictReader将首行字段名映射为字典键,便于按列名访问。

  python怎么读取csv文件?

  在Python中,读取CSV文件有多种方法,以下是常见的几种方式及示例代码:

  方法1:使用标准库 csv 模块

  pythonimport csv# 读取CSV文件with open('example.csv', mode='r', encoding='utf-8') as file:csv_reader = csv.reader(file)# 逐行读取(每行是列表)for row in csv_reader:print(row) # 输出: ['列1值', '列2值', ...]# 读取为字典(首行为键)with open('example.csv', mode='r', encoding='utf-8') as file:csv_dict = csv.DictReader(file)for row in csv_dict:print(row['列名1'], row['列名2']) # 通过列名访问

  参数说明:

  encoding='utf-8':避免中文乱码,根据文件实际编码调整。

  csv.DictReader:自动将首行作为字典的键。

  方法2:使用 pandas

  pythonimport pandas as pd# 读取CSV到DataFramedf = pd.read_csv('example.csv', encoding='utf-8')# 查看前5行print(df.head())# 访问列数据print(df['列名'].values) # 转为数组

  优势:

  直接处理为表格结构,支持筛选、统计等操作。

  参数丰富(如 sep=';' 指定分隔符,na_values='NA' 处理缺失值)。

python怎么读取csv文件.jpg

  方法3:使用 numpy

  pythonimport numpy as np# 读取CSV(假设无表头,纯数值)data = np.loadtxt('example.csv', delimiter=',', skiprows=1)print(data)

  注意:

  适合数值型数据,非数值内容需额外处理。

  常见问题处理

  文件路径:

  若文件不在当前目录,使用绝对路径。

  编码问题:

  报错 UnicodeDecodeError 时,尝试 encoding='gbk' 或 'latin1'。

  大文件优化:

  使用 pandas.read_csv(..., chunksize=1000) 分块读取。

  写入CSV:

  pythondf.to_csv('output.csv', index=False, encoding='utf-8') # 不保存索引

  总结

  简单读取:用 csv 模块。

  数据分析:用 pandas。

  数值计算:用 numpy。

  根据需求选择合适的方法即可!

  对于数据分析场景,pandas.read_csv()更强大。它直接将CSV转为DataFrame,支持列筛选、缺失值处理等。可指定分隔符(如sep=';')、跳过表头(header=0)、处理缺失值(na_values='NA')。适合复杂数据清洗和统计操作。


猜你喜欢