Excel是广泛使用的数据处理和管理工具,经常需要对表格中的数据进行导入和读取,通常的做法是使用微软自家的Excel软件,但是对于需要自动化处理大量数据的场合,手工导入和读取显然不够高效。另一方面,Python作为一种流行的面向对象的脚本语言,自带丰富的数据操作库,提供了非常优秀的Excel表格数据导入和读取工具,可以大大提高处理数据的效率。
Python实现Excel表格数据导入和读取主要有以下两种方法:
openpyxl是一个被广泛应用的Python库,可用于读取和编写Excel 2010 xlsx/xlsm/xltx/xltm文件,可以让Python解释器实现Excel类型的计算。可以在Python中向Excel表格中写入和读取数据,同时支持格式化和标记Excel表格中的数据。下面是一个基于openpyxl库实现Excel数据导入和读取的示例代码:
from openpyxl import load_workbook #读取Excel表格中的数据 def read_excel_data(file_path, sheet_name, start_row, end_row, start_column, end_column): data_list = [] try: workbook = load_workbook(file_path) worksheet = workbook[sheet_name] for row in worksheet.iter_rows(min_row=start_row, max_row=end_row, min_col=start_column, max_col=end_column): row_list = [] for cell in row: row_list.append(cell.value) data_list.append(row_list) except Exception as e: print(e) return data_list #将数据写入Excel表格中 def write_excel_data(file_path, sheet_name, row_index, column_index, data_list): try: workbook = load_workbook(file_path) worksheet = workbook[sheet_name] for i in range(len(data_list)): worksheet.cell(row=row_index+i, column=column_index).value = data_list[i] workbook.save(file_path) except Exception as e: print(e) #测试代码 if __name__ == '__main__': file_path = 'data.xlsx' sheet_name = 'Sheet1' #读取Excel表格中的数据 data_list = read_excel_data(file_path, sheet_name, 1, 3, 1, 3) print(data_list) #向Excel表格中写入数据 data_list = ['apple', 'banana', 'cherry'] write_excel_data(file_path, sheet_name, 8, 1, data_list)
pandas库是Python中数据分析和处理的重要库之一,可用于导入和导出常见的文件格式,包括Excel。pandas库提供了非常实用的DataFrame对象,可以轻松地实现对Excel表格中数据的操作。
下面是一个基于pandas库实现Excel数据导入和读取的示例代码:
import pandas as pd #读取Excel表格中的数据 def read_excel_data(file_path, sheet_name, start_row, end_row, start_column, end_column): data_frame = pd.read_excel(file_path, sheet_name, header=None, skiprows=start_row-1, skipfooter=0, usecols=range(start_column-1,end_column)) data_list = data_frame.values.tolist() return data_list #将数据写入Excel表格中 def write_excel_data(file_path, sheet_name, row_index, column_index, data_list): data_frame = pd.DataFrame(data=data_list) writer = pd.ExcelWriter(file_path, engine='openpyxl') data_frame.to_excel(writer, sheet_name, startrow=row_index-1, startcol=column_index-1, header=False, index=False) writer.save() #测试代码 if __name__ == '__main__': file_path = 'data.xlsx' sheet_name = 'Sheet1' #读取Excel表格中的数据 data_list = read_excel_data(file_path, sheet_name, 1, 3, 1, 3) print(data_list) #向Excel表格中写入数据 data_list = ['apple', 'banana', 'cherry'] write_excel_data(file_path, sheet_name, 8, 1, data_list)
Python实现Excel表格数据导入和读取主要有两种方法:使用Python自带的openpyxl库和使用Python第三方库pandas。两种方法都能够实现对Excel表格中数据的读取和写入,具体使用哪种方法可以根据实际需求进行选择。如果需要进行数据分析和处理,则推荐使用pandas库,它提供了更为方便的DataFrame对象,可以实现更高效的数据操作。
标签: 采集