Python中xlwt如何访问工作表

学过编程之后,处理表格更加得心应手,就比如xlwt中“get sheet”的方法就可以轻松访问表格。

举例:

我想访问电子表格的工作表,已经使用xlutils.copy()将主要工作簿复制到了另一个工作簿。但是不知道使用xlwt模块访问工作表的正确方法。我的示例代码:

import xlrd import xlwt from xlutils.copy import copy wb1 = xlrd.open_workbook('workbook1.xls', formatting_info=True) wb2 = copy(master_wb) worksheet_name = 'XYZ' (worksheet_name is a iterative parameter) worksheet = wb2.get_sheet(worksheet_name)

该类sheets()奇怪地缺少该方法xlwt.Workbook,因此使用该方法的其他答案将不起作用-仅xlrd.book(用于读取XLS文件)具有一个sheets()方法。

因为所有的类属性都是私有的,所以必须执行以下操作:

def get_sheet_by_name(book, name):    """Get a sheet by name from xlwt.Workbook, a strangely missing method.    Returns None if no sheet with the given name is present.    """    # Note, we have to use exceptions for flow control because the    # xlwt API is broken and gives us no other choice.    try:        for idx in itertools.count():            sheet = book.get_sheet(idx)            if sheet.name == name:                return sheet    except IndexError:        return None

如果不需要它为不存在的工作表返回None,则只需删除try / except块。如果要按名称重复访问多个工作表,将它们放入字典中会更有效,如下所示:

sheets = {} try:    for idx in itertools.count():        sheet = book.get_sheet(idx)        sheets[sheet.name] = sheet except IndexError:        pass

以上就是Python中xlwt用“get sheet”访问工作表的方法。更多Python学习推荐:云海天Python教程网。

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Python中xlwt如何访问工作表