重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下Python中xlwt怎样访问工作表,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
创新互联是一家专注网站建设、网络营销策划、微信平台小程序开发、电子商务建设、网络推广、移动互联开发、研究、服务为一体的技术型公司。公司成立10多年以来,已经为上千三轮搅拌车各业的企业公司提供互联网服务。现在,服务的上千客户与我们一路同行,见证我们的成长;未来,我们一起分享成功的喜悦。举例:
我想访问电子表格的工作表,已经使用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怎样访问工作表有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!