• 技术文章 >Python技术 >Python基础教程

    Python中xlwt如何访问工作表

    2020-11-05 15:33:49原创4448

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

    举例:

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


    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    <p style="line-height: 1.75em;"><span style="font-family: 微软雅黑, "Microsoft YaHei"; font-size: 14px;">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)<br></span></p>


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


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


    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    <p style="line-height: 1.75em;"><span style="font-family: 微软雅黑, "Microsoft YaHei"; font-size: 14px;">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<br></span></p>


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


    1

    2

    3

    4

    5

    6

    7

    <p style="line-height: 1.75em;"><span style="font-family: 微软雅黑, "Microsoft YaHei"; font-size: 14px;">sheets = {}

    try:

        for idx in itertools.count():

            sheet = book.get_sheet(idx)

            sheets[sheet.name] = sheet

    except IndexError:

            pass<br></span></p>


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

    专题推荐:xlwt访问工作表;python
    上一篇:如何使用Python 实现秒表功能? 下一篇:Python实用:用xlwt设置表格列宽和行高

    相关文章推荐

    • python中xlwt是什么• Python中如何用xlwt制作表格• Python中如何安装xlwt• Python中xlwt如何设置单元格格式• Python实用之xlwt单元格中加超链接

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网