手把手教你用Python操纵Word自动编写离职报告

前言

大家好,我是吴老板,今天给大家分享一篇Python自动化文章。

Python 是自动化处理的一把好手,比如自动编写离职申请!!!

安装

pip install python-docx -i https://pypi.douban.com/simple/

基本用法

创建一个docx文档
1from docx import Document 2from docx.enum.text import WD_PARAGRAPH_ALIGNMENT 3from docx.oxml.ns import qn 4from docx.shared import RGBColor, Pt 5 6# 初始化一个文档 7document = Document() 8 9# 加个标题 10paragraph = document.add_heading('开空调', level=3) 11 12document.save('开空调.docx')
添加一个段落
1# LEFT => 左对齐 2# CENTER => 文字居中 3# RIGHT => 右对齐 4# JUSTIFY => 文本两端对齐 5 6paragraph = document.add_paragraph("前几天最热的时候我们家热得快炸了!!!") 7# 字体格式设置 8paragraph_format = paragraph.paragraph_format 9paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER 10paragraph.add_run('粗体').bold = True
添加一张图片
1from docx.shared import Inches, RGBColor 2 3paragraph = document.add_paragraph() 4# 图片居中设置 5paragraph.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER 6run = paragraph.add_run("") 7run.add_picture('./ico.jpg', width=Inches(1.0), height=Inches(1.0))
设置字体颜色和大小
1 2paragraph = document.add_paragraph() 3paragraph.add_run('那你开') 4paragraph.add_run('空调').font.color.rgb = RGBColor(54, 95, 145) 5paragraph.add_run('啊!!') 6paragraph.add_run('开空调!!').font.size = Pt(30) # 字体大小设置,和word里面的字号相对应
嵌入表格
1document.add_page_break() 2# 创建表格 3table = document.add_table(rows=2, cols=2) 4table.style = 'LightShading-Accent1' 5cell = table.cell(0, 1) 6cell.text = '这是第一行第二列的单元格' 7 8row = table.rows[1] 9row.cells[0].text = '第二行第一列' 10row.cells[1].text = '第二行第二列'
开始编写离职报告
1 2# -*- coding: utf-8 -*- 3""" 4@Time2021/2/1 10:51 5@Auth :wutong 6@File :自动离职报告.py 7@IDE :PyCharm 8""" 9from docx import Document 10from docx.enum.text import WD_PARAGRAPH_ALIGNMENT 11from docx.oxml.ns import qn 12from docx.shared import RGBColor, Pt 13from docx.shared import Inches, RGBColor 14from lzStr import lzStr 15 16# todo 初始化一个文档 17document = Document() 18# 全局指定字体 19document.styles['Normal'].font.name = u'.萍方-简' 20document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'.萍方-简') 21 22# todo 加个标题 23paragraph = document.add_heading('离职申请', level=3) 24 25# todo 居中 26paragraph_format = paragraph.paragraph_format 27paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER 28 29paragraph = document.add_paragraph() 30paragraph.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER 31run = paragraph.add_run("") 32run.add_picture('./image.jpg', width=Inches(1.0), height=Inches(1.0)) 33 34paragraph = document.add_paragraph() 35lz_add_run = paragraph.add_run(lzStr.format(name="吴老板")) 36lz_add_run.font.size = Pt(8) # 字体大小设置,和word里面的字号相对应 37lz_add_run.font.color.rgb = RGBColor(54, 95, 145) 38 39document.save('离职.docx')
模板文件(lzStr.py)
1 2# -*- coding: utf-8 -*- 3""" 4@Time2021/2/1 10:53 5@Auth :wutong 6@File :lz.py 7@IDE :PyCharm 8""" 9 10"""此模板来自网络,做了小小改动 !!!""" 11 12lzStr = '''\t\t你好啊! ({name})已决定于2050415日正式离职,\n 13\t\t所以特提前半月向您提交这份辞职申请。\n 14\t\t还请留意一下简历中是否有适合接替我工作的人选,\n 15\t\t感激你这几年对我的照顾和帮忙,十分感激!\n 16\t\t最近在整理自我的简历,突然发觉这几年我在公司做的工种实在太多了,\n 17\t\t细数一下,有不下十种。\n 18\t\t先是19003月从前台开始做起,\n 19\t\t然后是人事,行政,市场开拓,婚庆,护肤品牌信息收集,再到之后的外贸。\n 20\t\t还有兼职文案,校对,送货,以及各种各样的手工。\n 21\t\t并且大多数时候我同时在做好几件事情,\n 22\t\t虽然我从来没有抱怨过我的工作太多可是这并不表示我的工作量小。\n 23\t\t并且我所有的工作都有做完的那天,或者是被人接手的那一天,\n 24\t\t这也就意味着一个新的工作即将来临。\n 25\t\t有时候就觉得自我是个高级打杂工,真的太杂了,\n 26\t\t杂到我此刻已经搞不清楚我自我能干什么,想干什么,\n 27\t\t我此刻对自我的职业定位和前程也是一片迷茫。\n 28\t\t所以,我此刻想休息一下,为自我的将来好好打算一下,\n 29\t\t重新规划自我的职业和人生。\n\n 30 31\t\t记得年前已经跟你谈过一次,谈过我的想法,\n 32\t\t所以想必我的辞职对你来说应当不会太意外。\n 33\t\t我是公司刚起步不久就过来帮你创业了,\n 34\t\t到此刻为止已经做了快3年多了,\n 35\t\t看着公司一天天成长壮大,慢慢的走上正轨我心里也是蛮高兴的。\n 36\t\t老实说离开公司多少还是有些不舍。我明白你的想法点子也很多,\n 37\t\t以前每一次你有新想法我都很支持你,\n 38\t\t都会全心全意按着你的想法去做事。\n 39\t\t公司出现了什么问题,我都会尽我最大的努力去帮你处理好\n 40\t\t因为我很重承诺,我答应的事情必须会做到。\n\n 41 42\t\t此刻公司已经走上正轨并且新鲜血液不断供给,\n 43\t\t我想我能够激流勇退了,也请你给我一次机会,\n 44\t\t一次让我实现自我想法的机会。\n 45 46\t\t{name}\t2050-04-15 04:15:15\n 47'''
程序运行之后,会在代码的当前目录下生成一个名为“离职.docx”的文件,生成的离职报告内容如下:

上面的图片是自己可以自定义的,需要和代码文件放在同一个目录下,命名为image.jpg。

好了,可以拿去递交辞呈了 !!!(悄悄告诉你,现在都用钉钉提交申请,没人会打印纸质版了哈哈哈哈)

代码小编已经打包好了,需要本文项目代码的小伙伴,请在本公众号后台回复“离职报告”关键字进行获取,如果在运行过程中有遇到任何问题,请随时留言或者加小编好友,小编看到会帮助大家解决bug噢!

-------------------********************************** End **********-------------**-----********-**********************************

往期精彩文章推荐:

欢迎各位大佬点击链接加入群聊【helloworld开发者社区】:https://jq.qq.com/?_wv=1027&k=mBlk6nzX进群交流IT技术热点。

本文转自 https://mp.weixin.qq.com/s/yQ5pTZq0LlVB8q4TewDCsA,如有侵权,请联系删除。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

​一篇文章总结一下Python库中关于时间的常见操作

前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在

Python3:sqlalchemy对mysql数据库操作,非sql语句

Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''