Python Excel操作---openpyxl应用 (2020-12-30 09:51)

openpyxl 应用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件。主要应用两个模块 Workbook、load_workbook。

load_workbook模块

load_workbook模块用于读取现有xlsx文件,其返还为一个workbook 对象。应用方法为

 from openpyxl import load_workbook
 wb  = load_workbook('文件名')

wb = load_workbook('文件名') 和 wb= Workbook() 作用类似,区别在于load_workbook 用于打开已存在的excel文件,而 Workbook则新建一个excel文件。

Workbook模块

Workbook模块是openpyxl 的核心模块,对excel表格的操作均集中在此模块内。下面一段代码为打开encoding_book.xlsx表格,并在表格中encoding test sheet中按行写入数据。

def TxtoExcel():
    file_name_list= [x for x in range(len(ip_id))]
    global __TEST_RSSI
    dest_filename = 'encoding_book.xlsx'
    """"用于将测试数据写入excel表格"""
    #打开excel文件
    wb = load_workbook(dest_filename)
    #获取sheet名称为"encoding test"sheet
    ws1 = wb.get_sheet_by_name("encoding test")
    #将ws1设置为当前活动表格
    wb.active = ws1
    #获取有内容的最后行号
    # row_max = ws1.max_row

    # ws1 = wb.active
    # ws1 = wb.create_sheet(title=__TEST_RSSI)
    # wb.active = ws1
    # grab the active worksheet
    # ws1 = wb.active
    # ws1.title = __TEST_RSSI

    for (key,item) in ip_id.items():
        file_name = "{}.txt".format(key)
        file_name_list[(int(item)-1)] = file_name
    result_1 = get_result_line(file_name_list[0])
    result_2 = get_result_line(file_name_list[1])
    result_3 = get_result_line(file_name_list[2])
    result_4 = get_result_line(file_name_list[3])
    for (key,item) in result_1.items():
        ws1.append(['',''])
        ws1.append(fist_row)
        ws1.append(item)
        ws1.append(result_2[key])
        ws1.append(result_3[key])
        ws1.append(result_4[key])
    wb.save(filename = dest_filename)
    wb.close()
原文地址:https://www.cnblogs.com/Finding-bugs/p/14211169.html