目录
前言Python 提供了多种读取 Excel 文件的方式,最常用的库是 [code]pandas[/code] 和 [code]openpyxl[/code]。下面我将详细介绍如何使用这两个库来读取 Excel 文件,并包含一些实用示例,帮助你撰写博客。 1. 安装须要的依赖首先,须要确保安装了 [code]pandas[/code] 和 [code]openpyxl[/code] 库,这两个库可以帮助我们轻松读取 Excel 文件。 你可以使用以下命令安装它们: [code]pip install pandas openpyxl[/code]
2. 读取Excel文件假设你有一个Excel文件[code]data.xlsx[/code],包含如下数据:
你可以使用 [code]pandas[/code] 来读取文件的内容。 [code]import pandas as pd # 读取Excel文件 df = pd.read_excel('data.xlsx') # 显示数据 print(df)[/code]输出: [code] Name Age City0 John 25 New York1 Alice 30 London2 Bob 22 Tokyo[/code]3. 读取特定的工作表Excel 文件通常包含多个工作表。可以通过指定 [code]sheet_name[/code] 来读取特定的工作表。例如,假设 [code]data.xlsx[/code] 文件中有一个名为 [code]Sheet2[/code] 的工作表: [code]df = pd.read_excel('data.xlsx', sheet_name='Sheet2') print(df) [/code]你也可以通过索引来指定工作表: [code]df = pd.read_excel('data.xlsx', sheet_name=0) # 读取第一个工作表 [/code]4. 读取多张工作表假如你想一次性读取 Excel 文件中的所有工作表,可以使用 [code]sheet_name=None[/code],它会返回一个包含多个 [code]DataFrame[/code] 的字典。 [code]dfs = pd.read_excel('data.xlsx', sheet_name=None) # 遍历所有工作表 for sheet, data in dfs.items(): print(f"工作表名: {sheet}") print(data)[/code]5. 只读取特定列有时,你只须要读取 Excel 文件中的部门列。可以通过 [code]usecols[/code] 参数指定须要读取的列。 [code]df = pd.read_excel('data.xlsx', usecols=['Name', 'City']) print(df) [/code]输出: [code] Name City0 John New York1 Alice London2 Bob Tokyo[/code]你也可以使用列的索引来读取特定列,例如: [code]df = pd.read_excel('data.xlsx', usecols=[0, 2]) # 读取第一和第三列 print(df) [/code]6. 处置处罚缺失数据在读取 Excel 数据时,可能会遇到空白单元格。你可以使用 [code]pandas[/code] 处置处罚这些缺失数据。例如,可以通过 [code]na_values[/code] 参数将特定的值识别为 [code]NaN[/code],大概使用 [code]fillna()[/code] 方法添补缺失值。 [code]# 将特定值识别为NaN df = pd.read_excel('data.xlsx', na_values=['N/A', 'NA']) # 添补缺失数据 df.fillna(value={'Age': 0, 'City': 'Unknown'}, inplace=True) print(df)[/code]7. 将Excel数据转换为其他格式有时你可能须要将读取的 Excel 数据保存为其他格式,例如 CSV 文件或 JSON 文件。[code]pandas[/code] 允许你轻松实现这一点。 [code]# 保存为CSV文件 df.to_csv('data.csv', index=False) # 保存为JSON文件 df.to_json('data.json', orient='records')[/code]8. 读取大文件和优化性能假如 Excel 文件非常大,可能会导致内存不足或读取速度较慢。[code]pandas[/code] 提供了一些方法来优化性能,例如使用 [code]chunksize[/code] 分块读取数据。 [code]# 分块读取Excel文件,每次读取100行 chunks = pd.read_excel('large_data.xlsx', chunksize=100) for chunk in chunks: print(chunk)[/code]9. 使用openpyxl读取Excel[code]openpyxl[/code] 更适合须要对 Excel 文件进行更底层操纵的场景,如读取和修改单元格样式、公式等。以下是一个简单的读取示例: [code]from openpyxl import load_workbook # 加载Excel工作簿 wb = load_workbook('data.xlsx') # 选择工作表 sheet = wb['Sheet1'] # 读取指定单元格的值 for row in sheet.iter_rows(min_row=1, max_row=sheet.max_row, values_only=True): print(row)[/code]10. 更多的Excel读取功能你可以使用 [code]pandas[/code] 提供的更多选项,例如:
总结通过 [code]pandas[/code] 和 [code]openpyxl[/code],你可以轻松读取 Excel 文件,并进行各种数据处置处罚操纵。[code]pandas[/code] 更适合快速、简单的数据分析,而 [code]openpyxl[/code] 则适合须要对 Excel 文件进行更深入控制的场景。 到此这篇关于Python读取Excel表格数据的方法详解的文章就介绍到这了,更多相干Python读取Excel内容请搜索脚本之家从前的文章或继续欣赏下面的相干文章希望各人以后多多支持脚本之家! 来源:https://www.jb51.net/python/328281ayp.htm 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|手机版|小黑屋|梦想之都-俊月星空
( 粤ICP备18056059号 )|网站地图
GMT+8, 2025-7-1 19:04 , Processed in 0.034124 second(s), 20 queries .
Powered by Mxzdjyxk! X3.5
© 2001-2025 Discuz! Team.