Python在python中使用xlrd和xlwt读写Excel

Posted 兔子爱读书

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python在python中使用xlrd和xlwt读写Excel相关的知识,希望对你有一定的参考价值。

在python中使用xlrd和xlwt读写Excel

1、xlrd读取Excel

首先是使用pip安装两个库

python读excel 使用: pip install xlrd

python写excel 使用: pip install xlwt

import xlrd

import datetime

from   datetime import date



def read_excel():

    # 打开文件

    wb = xlrd.open_workbook('D:/imps/tst.xls')

    # 获取所有sheet的名字

    print(wb.sheet_names())

    #sheetname = wb.sheet_names()[0]

    # sheet1索引从0开始,得到sheet1表的句柄

    sheet0 = wb.sheet_by_index(0)



    # 取得第一行列的有效数值数量

    rowMax = sheet0.nrows

    colMax = sheet0.ncols

    print("rowMax = %d"%(rowMax) )

    print("colMax = %d"%(colMax))

    # 获取某一个位置的数据   1 ctype : 0 empty,

    s = sheet0.cell(0, 0).value

    print(s)

    # python读取excel中单元格内容为日期的方式

    # 返回类型有5种 :1 string, 2 number, 3 date, 4 boolean, 5 error

    print(sheet0.cell(1, 2).ctype)

    for row in range(rowMax):

        for col in range(colMax):

             print( sheet0.cell(row,col).value    )

        print('----------------------')

read_excel()

2、使用xlwt写入Excel

#_*_coding:utf-8_*_

#!/usr/bin/python3



import xlwt



#设置表格样式

def set_stlye(name,height,bold=False):



    #初始化样式

    style = xlwt.XFStyle()



    #创建字体

    font = xlwt.Font()

    font.bold = bold

    font.colour_index = 4

    font.height = height

    font.name =name

    style.font = font

    return style



# 写入数据

def write_excel():

    f = xlwt.Workbook()

    # 创建sheet1

    sheet0 = f.add_sheet('sheet0', cell_overwrite_ok=True)

    row0 = ['金额', '状态', '广州', '深圳', '状态小计', '合计']

    col0 = ['机票', '船票', '火车票', '汽车票', '其他']

    status = [u'预定', u'出票', u'退票', u'业务小计']

    for i in range(0, len(row0)):

        sheet0.write(0, i, row0[i], set_stlye("Time New Roman",220,True))

        i, j = 1, 0

        while i < 4 * len(col0):

            # 控制循环:每次加4

            # 第一列

            sheet0.write_merge(i, i + 3, 0, 0, col0[j],set_stlye('Arial', 220, True))

            # 最后一列

            sheet0.write_merge(i, i + 3, 7, 7)

            i += 4

            sheet0.write_merge(21, 21, 0, 1, u'合计',set_stlye("Time New Roman", 220, True))

            j +=1

        i = 0

        while i < 4 * len(col0):  # 控制外层循环:每次加4

           for j in range(0, len(status)):  # 控制内层循环:设置每一行内容

              sheet0.write(i + j + 1, 1, status[j])

           i += 4

    f.save('D:/imps/data22.xls')

write_excel()

 

以上是关于Python在python中使用xlrd和xlwt读写Excel的主要内容,如果未能解决你的问题,请参考以下文章

Python在python中使用xlrd和xlwt读写Excel

Python在python中使用xlrd和xlwt读写Excel

Python在python中使用xlrd和xlwt读写Excel

Python在python中使用xlrd和xlwt读写Excel

python xlrd xlwt

Python_xlrd和xlwt模块介绍