注意点:这里的sheet参数必须是已经存在的sheet表,不能新建
写入列
一次写一列
import xlwings as xw
def write_col(io, sheet, col='A1', data=None):
"""
写入一列数据
:param io: Excel文件
:param sheet: sheet,int或者str类型
:param col: 哪一列,如:'A1'
:param data: 要写入的数据,list类型
:return:
"""
wb = xw.Book(io)
if isinstance(sheet, str):
sht = wb.sheets(sheet)
else:
sht = wb.sheets[sheet]
sht.range(col).options(transpose=True).value = data
wb.save()
wb.app.quit()
一次写多列
注意点:此方法所需的data参数必须是list嵌套,如:[[1, 9], [2, 8], [3, 7], [4, 6]],并且里面的每个list的长度必须一致
def write_col(io, sheet, col='A1', data=None):
"""
写入多列数据
:param io: Excel文件
:param sheet: sheet,int或者str类型
:param row: 从哪一列开始写入,如:'A1'
:param data: 要写入的数据,嵌套list类型
:return:
"""
wb = xw.Book(io)
if isinstance(sheet, str):
sht = wb.sheets(sheet)
else:
sht = wb.sheets[sheet]
sht.range(col).value = data
wb.save()
wb.app.quit()
写入效果如下:
写入行
一次写一行
注意点:此方法所需的data参数是list类型,如:[1, 2, 3, 4]
def write_row(io, sheet, row='A1', data=None):
"""
写入一行数据
:param io: Excel文件
:param sheet: sheet,int或者str类型
:param row: 哪一行,如:'A1'
:param data: 要写入的数据,list类型
:return:
"""
wb = xw.Book(io)
if isinstance(sheet, str):
sht = wb.sheets(sheet)
else:
sht = wb.sheets[sheet]
sht.range(row).value = data
wb.save()
wb.app.quit()
一次写多行
注意点:此方法所需的data参数必须是list嵌套,如:[[1, 2], [3, 4], [5, 6]],并且里面的每个list的长度必须一致
def write_row(io, sheet, row='A1', data=None):
"""
写入多行数据
:param io: Excel文件
:param sheet: sheet,int或者str类型
:param col: 从哪一行开始写入,如:'A1'
:param data: 要写入的数据,嵌套list类型
:return:
"""
wb = xw.Book(io)
if isinstance(sheet, str):
sht = wb.sheets(sheet)
else:
sht = wb.sheets[sheet]
sht.range(row).options(transpose=True).value = data
wb.save()
wb.app.quit()
写入效果如下: