码迷,mamicode.com
首页 > 其他好文 > 详细

xlrd和xlwt简单使用

时间:2018-12-18 02:13:56      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:span   获取   att   字体   open   初始   xlwt   else   man   

import xlrd
import xlwt
import re
#首先打开workbook
wb = xlrd.open_workbook(统计.xls)
#检查表单名字
wb.sheet_names()
#得到第一张表单,两种方式:索引和名字
#sh = wb.sheet_by_index()
#sh = wb.sheet_by_name()
sh = wb.sheets()[0] #读取第一个表单
#输出表格行数
#print(sh.nrows)
#输出表格列数
#print(sh.ncols)
#输出第一行
#print(sh.row_values(0))
#输出第一列
#print(sh.col_values(0))
#输出元素(0,2)的值
#print(sh.cell(0,2).value)
#获取现有行
# homv = sh.nrows
dh = sh.col_values(10)
dd = []
py = []
# print(sh.col_values(10))
for i in range(sh.nrows):
    if i == 0 or i == 1:
        continue
    if dh[i] not in py:
        py.append(dh[i])
        dd.append(sh.row_values(i))
    else:
        for k,v in enumerate(py):
            if dh[i] == v:
                for d in range(int(sh.row_values(i)[5])):
                    dd[k][4] += sh.row_values(i)[4]
                dd[k][5] = str(int(dd[k][5])+int(sh.row_values(i)[5]))

# 创建一个workbook 设置编码
workbook = xlwt.Workbook(encoding = utf-8)
# 创建一个worksheet
worksheet = workbook.add_sheet(My Worksheet)
# 写入excel
# 参数对应 行, 列, 值
#worksheet.write(1,0, label = ‘this is test‘)
# 初始化样式
style = xlwt.XFStyle()
# 为样式创建字体
font = xlwt.Font()
font.name = Times New Roman
font.bold = True # 黑体
#font.underline = True # 下划线
#font.italic = True # 斜体字
#style.font = font # 设定样式
#worksheet.write(1, 0, ‘Formatted value‘, style) # 带样式的写入
#worksheet.write(0, 0, ‘Unformatted value‘) # 不带样式的写入
#worksheet.col(0).width = 3333 # 设置单元格宽度
for k,v in enumerate(dd):
    y = 5
    worksheet.write(k,0,label=v[4])
    worksheet.write(k,1,label=v[5])
    worksheet.write(k,2,label=v[10])
    c = re.compile(r颜色.(.*?)【加绒加厚】)
    s = c.findall(v[4])
    z = int(v[5]) // 2
    for e in range(z):
        y += 2
    if len(s) == 1 and int(v[5]) > 1:
        for i in range(int(v[5])-1):
            if v[4].find(88) != -1:
                y += 21
            else:
                y += 34
    for i in s:
        if i.find(88) != -1:
            y += 21
        else:
            y += 34
    if v[27].find(新疆) != -1:
        y += 10
    worksheet.write(k,3,label=y)
#保存文件Excel_test.xls
workbook.save(Excel_test.xls)

xlrd和xlwt简单使用

标签:span   获取   att   字体   open   初始   xlwt   else   man   

原文地址:https://www.cnblogs.com/contiune/p/10134615.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!