xlwt模块

封装

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import xlwt
import xlrd
from xlutils.copy import copy class ExcelWrite(object):
def __init__(self, dir, file):
self.file_name = dir + file def set_style(self, name, colour_index, height, underline=False, italic=False, bold=False):
"""
:param name: 字体,如微软雅黑,Times New Roman等类型字体
:param colour_index: 字体颜色,如4
:param height: 字体大小
:param underline: 下划线
:param italic: 斜体
:param bold: 粗体
:return: 返回字体样式
"""
style = xlwt.XFStyle() # 初始化样式
font = xlwt.Font() # 创建字体
font.name = name # 设置字体类型
font.colour_index = colour_index # 字体颜色
font.height = height # 字体大小
font.underline = underline
font.italic = italic
font.bold = bold # 粗体
style.font = font
return style """
按行插入数据
[["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"]]
""" def write_excel_by_rows(self, rows, sheet, style=None):
f = xlwt.Workbook()
sheet = f.add_sheet(sheet, cell_overwrite_ok=True)
rows_length = len(rows)
for i in range(0, rows_length):
row = rows[i]
row_length = len(row)
for j in range(0, row_length):
if style is None:
sheet.write(i, j, row[j])
else:
sheet.write(i, j, row[j], style) f.save(self.file_name) """
按列插入数据
[["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"],["姓名", "年龄", "出生日期", "爱好"]]
""" def write_excel_by_columns(self, columns, sheet, style=None):
f = xlwt.Workbook()
sheet = f.add_sheet(sheet, cell_overwrite_ok=True)
columns_length = len(columns)
for i in range(0, columns_length):
column = columns[i]
column_length = len(column)
for j in range(0, column_length):
if style is None:
sheet.write(j, i, column[j])
else:
sheet.write(j, i, column[j], style) f.save(self.file_name) # 追加值
def append_value(self, index_or_name, row, col, value): # 知识点
"""
:param index_or_name: 第几个表格或者表格的名字
:param row: 第几行-1
:param col: 第几列-1
:param value: 填入的值
"""
wb = xlrd.open_workbook(filename=self.file_name)
write_data = copy(wb)
write_data.get_sheet(index_or_name).write(row, col, value) # 行,列,值
write_data.save(self.file_name)

设置单元格宽度

sheet.col(0).width = 300 #设置某列的单元格宽度

写入时间格式

import xlwt
import datetime
#初始化一个excel
excel = xlwt.Workbook(encoding='utf-8')
#新建一个sheet
sheet = excel.add_sheet('xlwt_sheet1')
style = xlwt.XFStyle()
style.num_format_str = 'M/D/YY'
sheet.write(2,0,datetime.datetime.now(),style)
excel.save('C:/Users/ms/Desktop/test_xlwt.xls') # 写入指定时间
date_time = datetime.datetime.strptime('2013-08-28','%Y-%m-%d')
sheet.write(2,0,date_time,style)

合并单元格

 write_merge的用法:sheet1.write_merge(6, 6, 1, 2, '内容',style)

 # write_merge(x, x + h, y, w + y, string, style)

 # x表示行,y表示列,w表示向右跨列个数,h表示向下跨行个数

 x=6,h=0,y=1,w=1

 insert_bitmap(img, x, y, x1, y1, scale_x=0.8, scale_y=1)同理

操作-写入excel的更多相关文章

  1. C#操作Excel文件(读取Excel,写入Excel)

    看到论坛里面不断有人提问关于读取excel和导入excel的相关问题.闲暇时间将我所知道的对excel的操作加以总结,如今共享大家,希望给大家可以给大家带了一定的帮助.另外我们还要注意一些简单的问题1 ...

  2. C# 操作Excel基础篇(读取Excel、写入Excel)

    注意事项:Excel的数据表中最多只能储存65535行数据,超出后,需要将数据分割开来进行储存.同时对于Excel中的乱码象限,是由于编码的错误方式导致引起的! 一.读取Excel数据表,获得Data ...

  3. python(写入excel操作-xlwt模块)

    一.安装xlwt模块 pip install xlwt 二.excel写入操作 这种方式只能新增或者覆盖文件写入 import xlwt # 创建一个workbook 设置编码 workbook = ...

  4. python(写入 excel 操作 xlwt 模块)

    一.安装 xlwt 模块 pip install xlwt 二.excel 写入操作 这种方式只能新增或者覆盖文件写入 import xlwt # 创建一个workbook 设置编码 workbook ...

  5. 按键精灵如何调用Excel及按键精灵写入Excel数据的方法教程---入门自动操作表格

    首先来建立一个新的Excel文档,在桌面上点击右键,选择[新建]-[Excel工作表],命名为[新手学员]. 现在这个新Excel文档是空白的,我们接下来会通过按键精灵的脚本来打开并写入一些数据.打开 ...

  6. C#中NPOI操作excel之读取和写入excel数据

    一.下载引用 下载需要引用的dll,即:NPOI.dll,NPOI.OOXML.dll,NPOI.OpenXml4Net.dll,ICSharpCode.SharpZipLib.dll(office2 ...

  7. python xlwt写入excel操作

    引用https://www.cnblogs.com/python-robot/p/9958352.html 安装 $ pip install xlwt 例子: import xlwt # 创建一个wo ...

  8. 将Oracle数据库中的数据写入Excel

    将Oracle数据库中的数据写入Excel 1.准备工作 Oracle数据库"TBYZB_FIELD_PRESSURE"表中数据如图: Excel模板(201512.xls): 2 ...

  9. Python将MySQL表数据写入excel

    背景:将mysql表查询结果写入excel. 1.使用sqlyog工具将查询结果导出到Excel.xml中,用excel打开发现:因为text字段中有回车换行操作,显示结果行是乱的. 2.用mysql ...

随机推荐

  1. 【Mac】anaconda自定义channels

    1.查看channels conda config --show channels 输出 channels: - defaults 2.添加channels conda config --add ch ...

  2. Kubernetes学习笔记(五):卷

    简介 卷是Pod的一部分,与Pod共享生命周期.它不是独立的Kubernetes对象,因此不能单独创建. 卷提供的存储功能不但可以解决容器重启后数据丢失的问题,还可以使数据在容器间共享. 一些卷的类型 ...

  3. 实验五:shell脚本编程

    项目 内容 这个作业属于哪个课程 班级课程的主页链接 这个作业的要求在哪里 作业要求链接地址 学号-姓名 17043133-木腾飞 作业学习目标 1.了解shell 脚本的概念及应用2.掌握shell ...

  4. h5中嵌入视频自动播放的问题

    在H5页面中嵌入视频的情况是比较多件的,有时候会碰到需要自动播放的情况,之前根本觉得这不是问题,但是自己的项目中需要视频的时候就有点sb了,达不到老板的要求,那个急呀~~~ 各种查资料,找到一个方法, ...

  5. NOI2006 最大获利 洛谷P4174

    洛谷题目传送门! 题目描述 新的技术正冲击着手机通讯市场,对于各大运营商来说,这既是机遇,更是挑战.THU 集团旗下的 CS&T 通讯公司在新一代通讯技术血战的前夜,需要做太多的准备工作,仅就 ...

  6. [安卓基础] 007.管理Activity的生命周期

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  7. Hadoop 伪分布模式安装

    ( 温馨提示:图片中有id有姓名,不要盗用哦,可参考流程,有问题评论区留言哦 ) 一.任务目标 1.了解Hadoop的3种运行模式 2.熟练掌握Hadoop伪分布模式安装流程 3.培养独立完成Hado ...

  8. 单片机提高ADC精度总结

    在常用传感器中,模数转换器是其中至关重要的环节,模数转换器的精度以及系统的成本直接影响到系统的实用性.因此.如何提高模数转换器的精度和降低系统的成本是衡量系统是否具有实际应用价值的标准. 图 1    ...

  9. Vue 哈希换histroy

    这个需要后端支持一下 前端配置在router下的index.js配置如下: import Vue from 'vue' import Router from 'vue-router' import I ...

  10. jchdl - GSL实例 - ComplementOne(一的补码)

    https://mp.weixin.qq.com/s/zZTnDdbCUCRGGpgpfAZsYQ   一的补码指对二进制数的每一位分别求补(二进制运算下0,1互为补数),实际运算即为对每一位取反.最 ...