Python 对 excel 表格的读写

当读取表格报错时…

UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 0: ordinal not in range(128)

解决方案:

import sys
reload(sys)
sys.setdefaultencoding('utf8')

当读取一个excel时…

解决方案:

def xlsread():

    file_path = '一个表.xls'
    xls_data = xlrd.open_workbook(file_path)
    
    # ===========================================================================
    table = data.sheets()[0]                                    #通过索引顺序获取
    # ===========================================================================
    table = data.sheet_by_index(0)                              #通过索引顺序获取
    # ===========================================================================
    table = xls_data.sheet_by_name(u'Sheet1')                   #通过名称获取
    # ===========================================================================
    
    table_list = table._cell_values                             #获得了[[]]

当创建一个XLS时…

def set_style(name, height, bold=False):
    style = xlwt.XFStyle()  # 初始化样式
    font = xlwt.Font()  # 为样式创建字体
    font.name = name  # 'Times New Roman'
    font.bold = bold
    font.color_index = 4
    font.height = height
    
    # borders= xlwt.Borders()
    # borders.left= 6
    # borders.right= 6
    # borders.top= 6
    # borders.bottom= 6
    style.font = font
    # style.borders = borders

    return style

写excel

def write_excel(xls_list):
    f = xlwt.Workbook()                                      # 创建工作簿
    sheet1 = f.add_sheet(u'Sheet1', cell_overwrite_ok=True)  # 创建sheet
    rownum = 0                                               # 写入的行号,逐行增加
    for oneRow in xls_list:
        for i in range(0, len(oneRow)):
            sheet1.write(rownum, i, oneRow[i], set_style(u'宋体', 180, True))
        rownum += 1
    f.save('file_name.xlsx' % )                        # 保存文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值