PythonExcel操作模块XlsxWriter之写⼊worksheet.write()worksheet.write()
wirte(row, col, *args)
向⼯作表单元格写⼊普通的数据。
参数:
row - 单元格所在的⾏(索引从0开始计数)
col - 单元格所在的列(索引从0开始计数)
*args - 传递到⼦⽅法的附加参数诸如数字,字符串,单元格格式。
Excel区分不同的数据类型诸如字符串,数字,空格,公式和超链接。为了简化向XlsxWriter⽂件写⼊数据的过程, write()⽅法作为以下⼏个特定⽅法的假名(译者注:意思就是通常不需要程序员显式地指定以下⽅法,在使⽤write()⽅法时XlxsWriter会按照规则判断数据类型并采⽤对应的⽅法写⼊数据):
write_string()
write_number()
write_blank()
write_formula()
write_datetime()
write_boolean()
write_url()
write()处理数据的规则如下:
数据类型诸如float, int, long, decimal.Decimal和fractions.Fraction 使⽤write_number()⽅法。
数据类型诸如datatime.datetime,datetime.datedatetime.time 或 datetime.timedelta 使⽤write_datetime()⽅法。
None和空字符串“”使⽤write_blank()⽅法。
数据类型bool使⽤write_boolean()。
字符串(String)则按照以下规则处理数据:
以“=”开始的匹配公式字符串使⽤write_formula()⽅法。这个⽅法可以被覆盖,见下。
匹配⽀持的URL的字符串使⽤write_url()⽅法。这个⽅法可以被覆盖,见下。
为了防⽌Excel警告“Numbers Stored as Text”,当Workbook()构造器strings_to_numbers选项为True时,被float()⽅法转换为数字的字符串会使⽤write_number()⽅法。见下。
不匹配以上条件的字符串会使⽤write_string()⽅法。
如果值不匹配以上所有类型,最终会使⽤ float()来检查它是否与⽤户定义的浮点类型相对应。如果不对应,则会使⽤ write_number()⽅法。
最后,如果这些规则全都不匹配,那么程序会抛 TypeError异常。
这是⼀些例⼦:
worksheet.write(0, 0, 'Hello')          # write_string()
worksheet.write(1, 0, 'World')          # write_string()
worksheet.write(2, 0, 2)                # write_number()
worksheet.write(3, 0, 3.00001)          # write_number()
worksheet.write(4, 0, '=SIN(PI()/4)')  # write_formula()
worksheet.write(5, 0, '')              # write_blank()
writeline和write的区别pythonworksheet.write(6, 0, None)            # write_blank()
这将创建⼀个像下⾯这样的⼯作表:
注意
Workbook()构造器选项接收三个可选参数,可以⽤来覆盖write()函数的字符串处理。
这些选项与它们的默认值如下:
xlsxwriter.Workbook(filename, {'strings_to_numbers':  False,
'strings_to_formulas': True,
'strings_to_urls':    True})
write()⽅法⽀持两种形式的表⽰法来指定单元格的位置: ⾏-列( Row-column)表⽰法和 A1表⽰法:
# 这两种形式是等价的
worksheet.write(0, 0, 'Hello')
worksheet.write('A1', 'Hello')
在⼦ write⽅法中 cell_format参数是⽤来应⽤格式化到单元格的,这个参数是可选的但在启⽤时它应当是有效的格式化对象: cell_format = workbook.add_format({'bold': True, 'italic': True})
worksheet.write(0, 0, 'Hello', cell_format)  # 单元格是加粗(Blod)和斜体(Italic)的

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。