Python xlwt 操作 excel 表格基础(二):冻结窗口、设置加密保护、打印设置等
Python xlwt 模块编辑 Excle 表格 基础 2 冻结窗口、设置加密保护、打印设置等
- 前言:
- 1、设置冻结窗口
- 2、sheet表常用显示设置
- 3、设置表格保护及密码:
- 4、设置默认打印格式
- 4.1、基础设置:
- 4.2、页眉页脚设置:
- 4.3、设置页边距:
- 4.4、设置默认纸张、打印方向等:
- 4.5 设置打印区域:
- 4.6、其他设置:
- 结尾:
- 【Python与Office】专栏
前言:
上一篇博客对Python 的第三方模块 xlwt 对Excel表格的一些基础操作如:新建工作簿、增加sheet表、插入位图等 进行了讲解。
本篇博客介绍 xlwt 模块设置 Excel表格文件的窗口显示样式、默认打印格式,主要内容包括:
1. 设置冻结窗口;
2. 表格的常用显示设置;
3. 设置文档保护及密码;
4. 表格打印设置详解。
1、设置冻结窗口
Excel表格对于数据的显示非常直观,其冻结窗口的设置就是对用户阅读数据非常友好的一个功能。
我们先写如下一个代码,创建一个Excel表格,并写入数据:
# 导入模块
import xlwtwork_book = xlwt.Workbook()
work_sheet = work_book.add_sheet('Test')
w2 = work_book.add_sheet('T2')z = [[r,c] for r in range(20) for c in range(20)]
[l.append(str(i)) for i,l in enumerate(z)]
for info in z:work_sheet.write(info[0],info[1],info[2])w2.write(info[0],info[1],info[2])# 保存文件
work_book.save('Test2.xls')
我们在当前工作路径下创建了一个 Test2.xls 表格文件,文件中有Test,T2两个sheet表,表中数据一样。
文件截图:
后续我们对 Test2.xls 文件的 Test sheet 对象进行操作,大家可和 T2 sheet 对象进行对比,看看一些设置的效果。
设置冻结窗口:
# 设置冻结窗口
# 设置冻结为真
work_sheet.set_panes_frozen('1')
# 水平冻结
work_sheet.set_horz_split_pos(2)
# 垂直冻结
work_sheet.set_vert_split_pos(1)
解析:
设置冻结窗口需先将sheet表的冻结属性设置为真,然后再对水平、垂直需冻结行数、列数进行设置。
上面的代码将表格文件的Test sheet 的前两行、第一列设置冻结窗口,效果如下:
2、sheet表常用显示设置
1、设置隐藏行、列标签(默认为显示):
work_sheet.set_show_headers(0)
2、设置隐藏网格线(默认为显示):
work_sheet.set_show_grid(0)
3、设置表格右排列(默认为左排列):
work_sheet.set_cols_right_to_left(1)
设置后的表格截图:
可以看到:sheet表没有了ABCD…行标签、1 2 3 4…列标签,网格线也被隐藏。数据开始方向变为,从右到左。
3、设置表格保护及密码:
设置文档保护及密码,不允许修改(默认不保护):
work_sheet.set_protect(1)
work_sheet.set_password('123456')
效果图:
4、设置默认打印格式
xlwt 模块提供了设置 sheet 表默认打印样式的方法,而这一部分资料在网上基本上找不到…。
4.1、基础设置:
设置打印行、列标签(默认不打印):
work_sheet.set_print_headers(1)
设置打印网格线(默认不打印):
work_sheet.set_print_grid(1)
设置表格数据打印垂直居中(默认不居中):
work_sheet.set_print_centered_vert(1)
设置表格数据打印水平不居中(默认居中):
work_sheet.set_print_centered_horz(0)
上述四种设置后,表格打印预览:
4.2、页眉页脚设置:
日常工作中在Excel表格打印时,一般不会去设置表格文件的页眉页脚,但是 xlwt 模块还是提供了设置页眉页脚的方法:
设置页眉(默认为页码数):
work_sheet.set_header_str('TestPageNO. &P'.encode())
设置页脚(默认为文件名称):
work_sheet.set_footer_str('FileName:&F'.encode())
页眉打印预览:
页脚打印预览:
注:这里的眉设置的 ‘TestPageNO. &P’.encode() 中 &P 代表页码数,页脚中的 &F 表示,不包含文件路径的文件名称。
其他的代码还有:
Command Contents
&& The "&" character itself
&L Start of the left section
&C Start of the centred section
&R Start of the right section
&P Current page number
&N Page count
&D Current date
&T Current time
&A Sheet name (BIFF5-BIFF8)
&F File name without path
&Z File path without file name (BIFF8X)
&G Picture (BIFF8X)
&B Bold on/off (BIFF2-BIFF4)
&I Italic on/off (BIFF2-BIFF4)
&U Underlining on/off
&E Double underlining on/off (BIFF5-BIFF8)
&S Strikeout on/off
&X Superscript on/off (BIFF5-BIFF8)
&Y Subscript on/off (BIFF5-BIFF8)
比如我们想要设置:页眉为空,页脚为sheet名称 + 当前日期+ 页码。
# 设置页眉为空
work_sheet.set_header_str(''.encode())
# 设置页脚
work_sheet.set_footer_str('NAME:&A DATE:&D No.: &P'.encode())
打印预览:
4.3、设置页边距:
设置左边距(默认0.3)、右边距(默认0.3):
work_sheet.set_left_margin(0.5)
work_sheet.set_right_margin(0.5)
设置上边距(默认:0.61)、下边距(默认:0.37):
work_sheet.set_top_margin(0.5)
work_sheet.set_bottom_margin(0.5)
设置页眉边距(默认:0.1)、页脚边距(默认:0.1):
work_sheet.set_header_margin(0.5)
work_sheet.set_footer_margin(0.5)
4.4、设置默认纸张、打印方向等:
将打印纸张设置为A3(默认A4,9):
work_sheet.set_paper_size_code(8)
常用纸张编码代号:
8 A3 297mm x 420mm
9 A4 210mm x 297mm
10 A4 small 210mm x 297mm
11 A5 148mm x 210mm
12 B4 (JIS) 257mm x 364mm
13 B5 (JIS) 182mm x 257mm
33 B4 (ISO) 250mm x 353mm
34 B5 (ISO) 176mm x 250mm
35 B6 (ISO) 125mm x 176mm
66 A2 420mm x 594mm
70 A6 105mm x 148mm
设置横向打印(默认纵向打印):
work_sheet.set_portrait(0)
设置页面缩放比例为90% (默认100%):
work_sheet.set_print_scaling(90)
设置是否单色打印(默认单色):
work_sheet.set_print_colour(0)
以上设置,打印预览:
4.5 设置打印区域:
设置垂直打印区域:
work_sheet.set_vert_page_breaks([[5,0,0],[11,0,0]])
注:第一页为5列,第二列为6列。
设置水平打印区域:
work_sheet.set_horz_page_breaks([[6,0,0],[12,0,0]])
注:第一页为6行,第2页为6行。
上述设置,分页预览图:
4.6、其他设置:
以草稿质量打印(默认非草稿):
work_sheet.set_print_draft(1)
草稿打印,打印出来的效果会很模糊,不常用。
设置打印批注、批注在文档结尾显示(默认不打印批准):
work_sheet.set_print_notes(1)
work_sheet.set_print_notes_at_end(1)
设置打印单元格错误显示值为:#N/A(默认打印显示值):
work_sheet.set_print_omit_errors(3)
0 设置打印显示值;
1 设置为空白;
2 设置为–;
3 设置为:#N/A。
设置打印质量为600 dpi (默认300dpi):
work_sheet.set_print_hres(600)
work_sheet.set_print_vres(600)
结尾:
以上就是本篇博客全部内容,感谢阅读。
下一篇博客内容为:介绍 xlwt 模块设置 Excel表格文件 单元格格式、字体格式、对齐方式、边框及填充等 方法。
【Python与Office】专栏
感兴趣的朋友,可以点个 关注 或 收藏 。如在博客中遇到任何问题或想法,可留言或私信。
创作不易,你的支持是我最大的动力,感谢 !
Python xlwt 操作 excel 表格基础(二):冻结窗口、设置加密保护、打印设置等相关推荐
- Python xlrd 读取 Excel 表格基础(一):获取sheet、行、列对象,读取数据类型等
Python xlrd 读取 Excel 表格基础 一:按行.按列读取Excel数据内容 前言: 1.获取工作簿.sheet对象 2.获取sheet表中行.列对象 3.读取sheet对象中所有数据 4 ...
- python xlwt操作excel
python xlwt操作excel posted on 2018-04-18 14:46 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs ...
- Python Pandas操作Excel表格文件:创建新表格,追加数据
前言: python操作excel表格文件的增删读写,一般需要用到的第三方库有xlwt,xlrd.xlrd负责读取excel,xlwt负责写入excel文件.这种操作方法比较繁琐,效率还不错,通俗易懂 ...
- python openpyxl操作Excel表格
原创:未经允许不得转载,转载需标明出处 打算分为两个部分: 第一部分为:操作Excel表格 第二部分为:操作Excel图表 现在发布为第一部分内容 在最近的项目中的使用到了提取Android帧率日志, ...
- Python自动化操作Excel表格
目录 一.Python打开及读取Excel表格内容 二.Python向Excel表格中写 三.批量调整字体.样式 四.编程生成Excel内图表 一.Python打开及读取Excel表格内容 #打开以及 ...
- 【转】经典!python中使用xlrd、xlwt操作excel表格详解
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
- python中使用xlrd、xlwt操作excel表格详解
近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&qu ...
- 通Python实现操作 excel表格 工作效率提升百倍
一.概述 操作 excel 是程序员经常要遇到的场景.因为产品.运营的数据都是以这种格式存储.所以,当程序员拿到这些数据肯定要解析,甚至需要把结果输出成 excel 文件. 下面就介绍如果用 Pyth ...
- python操作excel表格-python如何操作excel表格
Python对Excel的读写主要有xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种. python学习网,大量的免费python视频教程,欢迎在线学习! 1.xlrd主 ...
- python 编辑excel需要什么包_Python 中操作EXCEL表格的包
今天,马云爸爸又来贡献金句了,比王健林公公一亿一个小目标还高,"一个月挣一二十个亿很难受!!!",作为在传统企业主要为电商部门提供数据分析的数据分析师,体验太深刻了. 双11前后, ...
最新文章
- 算法:快速排序实现 定制比较函数
- GaitSet:通过交叉视角步态识别
- 记一次关于MySQL与PHP的蠢事
- 懒人必备:.NetCore快速搭建ELK分布式日志中心
- 已知二叉树的前序遍历、中序遍历或者中序遍历、后序遍历求二叉树结构的算法
- copy_to_user和copy_from_user
- php 取url根域名,php中取得URL的根域名的代码
- Cocos Creator Ui系统
- MySQL调用mongodb事务回滚_SpringBoot整合MongoDB,在多数据源下实现事务回滚。
- 数据聚合Spring Data MongoDB:嵌套结果
- Flutter Mac iOS 环境配置
- 用ShopEx网上开店之安装Zend插件
- 协方差矩阵的详细说明
- 简单实现 C# TabControl 不显示选项卡标题
- InstallShield中通过修改注册表关闭Vista/Windows 7的UAC
- Android布局之屏幕自适应
- 宏转录组方法_中山大学医学院施莽教授学术讲座:宏转录组方法在病原生物学领域的应用...
- JSON数组转LIST集合的两种方法
- Python 编写自动化工具
- php 二级导航,导航下面的二级导航,显示和隐藏,