python 实现读写excel数据

读取数据:

先创建一个xlsx文件用来测试读取,格式如下

 

  import openpyxl

from openpyxl.utils import get_column_letter

def
read_data_line(file_name, sheet_name): """ 从excel中读取数据,保存到list中 :param file_name: :param sheet_name: :return: """ # 打开文件 wb = openpyxl.load_workbook(file_name) # 选择表单 sh = wb[sheet_name] # 按行读取数据转化为列表 rows_data = list(sh.rows) # 打印一下验证是否读取成功 print(len(rows_data)) # 读取表头信息 titles = [] for title in rows_data[0]: titles.append(title.value) # 打印一下验证是否读取成功 print(titles) # 读取内容数据 warnings = [] for warning in rows_data[1:]: data = [] for cell in warning: data.append(cell.value) # print(data) warnings.append(data) # 打印读取的数据 print(warnings)

def write_to_excel(increment_data, table_title):
    """
    将增量数据导出到excel中
    :param increment_data:
    :param table_title:
    :return:
    """
    # 创建一个工作表
    wb = openpyxl.Workbook()
    # 创建一个数据库的sheet表单
    ws = wb.active
    # 设置sheet名
    ws.title = '数据库'
    # 设置宽度
    width = 30
    # 写入表头(row=1,col=1)开始的。数组是从0开始的,所以要加1
    for col in range(len(table_title)):
        c = col + 1
        ws.cell(row = 1, column = c).value = table_title[col]
    # 设置列宽
    for i in range(1, ws.max_column + 1):
        ws.column_dimensions[get_column_letter(i)].width = width
    # 数据导出到文件中
    for row in range(len(increment_data)):
        ws.append(increment_data[row])
    # 保存为一个xlsx格式的文件
    wb.save('test.xlsx')

 

 

posted @ 2022-04-06 17:09  喜欢咩咩  阅读(721)  评论(0编辑  收藏  举报