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

Karen110
• 阅读 1409

前言

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

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

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

安装

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

基本用法

创建一个docx文档
from docx import Document
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.oxml.ns import qn
from docx.shared import RGBColor, Pt

# 初始化一个文档
document = Document()

# 加个标题
paragraph = document.add_heading('开空调', level=3)

document.save('开空调.docx')
添加一个段落
# LEFT      =>  左对齐
# CENTER    =>  文字居中
# RIGHT     =>  右对齐
# JUSTIFY   =>  文本两端对齐

paragraph = document.add_paragraph("前几天最热的时候我们家热得快炸了!!!")
# 字体格式设置
paragraph_format = paragraph.paragraph_format
paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
paragraph.add_run('粗体').bold = True
添加一张图片
from docx.shared import Inches, RGBColor

paragraph = document.add_paragraph()
# 图片居中设置
paragraph.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
run = paragraph.add_run("")
run.add_picture('./ico.jpg', width=Inches(1.0), height=Inches(1.0))
设置字体颜色和大小

paragraph = document.add_paragraph()
paragraph.add_run('那你开')
paragraph.add_run('空调').font.color.rgb = RGBColor(54, 95, 145)
paragraph.add_run('啊!!')
paragraph.add_run('开空调!!').font.size = Pt(30)  # 字体大小设置,和word里面的字号相对应
嵌入表格
document.add_page_break()
# 创建表格
table = document.add_table(rows=2, cols=2)
table.style = 'LightShading-Accent1'
cell = table.cell(0, 1)
cell.text = '这是第一行第二列的单元格'

row = table.rows[1]
row.cells[0].text = '第二行第一列'
row.cells[1].text = '第二行第二列'
开始编写离职报告

# -*- coding: utf-8 -*-
"""
@Time :2021/2/1 10:51
@Auth :wutong
@File :自动离职报告.py
@IDE :PyCharm
"""
from docx import Document
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.oxml.ns import qn
from docx.shared import RGBColor, Pt
from docx.shared import Inches, RGBColor
from lzStr import lzStr

# todo 初始化一个文档
document = Document()
# 全局指定字体
document.styles['Normal'].font.name = u'.萍方-简'
document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'.萍方-简')

# todo 加个标题
paragraph = document.add_heading('离职申请', level=3)

# todo 居中
paragraph_format = paragraph.paragraph_format
paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

paragraph = document.add_paragraph()
paragraph.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
run = paragraph.add_run("")
run.add_picture('./image.jpg', width=Inches(1.0), height=Inches(1.0))

paragraph = document.add_paragraph()
lz_add_run = paragraph.add_run(lzStr.format(name="吴老板"))
lz_add_run.font.size = Pt(8)  # 字体大小设置,和word里面的字号相对应
lz_add_run.font.color.rgb = RGBColor(54, 95, 145)

document.save('离职.docx')
模板文件(lzStr.py)

# -*- coding: utf-8 -*-
"""
@Time :2021/2/1 10:53
@Auth :wutong
@File :lz.py
@IDE :PyCharm
"""

"""此模板来自网络,做了小小改动 !!!"""

lzStr = '''\t\t你好啊! 我({name})已决定于2050年4月15日正式离职,\n
\t\t所以特提前半月向您提交这份辞职申请。\n
\t\t还请留意一下简历中是否有适合接替我工作的人选,\n
\t\t感激你这几年对我的照顾和帮忙,十分感激!\n
\t\t最近在整理自我的简历,突然发觉这几年我在公司做的工种实在太多了,\n
\t\t细数一下,有不下十种。\n
\t\t先是1900年3月从前台开始做起,\n
\t\t然后是人事,行政,市场开拓,婚庆,护肤品牌信息收集,再到之后的外贸。\n
\t\t还有兼职文案,校对,送货,以及各种各样的手工。\n
\t\t并且大多数时候我同时在做好几件事情,\n
\t\t虽然我从来没有抱怨过我的工作太多可是这并不表示我的工作量小。\n
\t\t并且我所有的工作都有做完的那天,或者是被人接手的那一天,\n
\t\t这也就意味着一个新的工作即将来临。\n
\t\t有时候就觉得自我是个高级打杂工,真的太杂了,\n
\t\t杂到我此刻已经搞不清楚我自我能干什么,想干什么,\n
\t\t我此刻对自我的职业定位和前程也是一片迷茫。\n
\t\t所以,我此刻想休息一下,为自我的将来好好打算一下,\n
\t\t重新规划自我的职业和人生。\n\n

\t\t记得年前已经跟你谈过一次,谈过我的想法,\n
\t\t所以想必我的辞职对你来说应当不会太意外。\n
\t\t我是公司刚起步不久就过来帮你创业了,\n
\t\t到此刻为止已经做了快3年多了,\n
\t\t看着公司一天天成长壮大,慢慢的走上正轨我心里也是蛮高兴的。\n
\t\t老实说离开公司多少还是有些不舍。我明白你的想法点子也很多,\n
\t\t以前每一次你有新想法我都很支持你,\n
\t\t都会全心全意按着你的想法去做事。\n
\t\t公司出现了什么问题,我都会尽我最大的努力去帮你处理好\n
\t\t因为我很重承诺,我答应的事情必须会做到。\n\n

\t\t此刻公司已经走上正轨并且新鲜血液不断供给,\n
\t\t我想我能够激流勇退了,也请你给我一次机会,\n
\t\t一次让我实现自我想法的机会。\n

\t\t{name}\t2050-04-15 04:15:15\n
'''
程序运行之后,会在代码的当前目录下生成一个名为“离职.docx”的文件,生成的离职报告内容如下:

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

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

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

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

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

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

往期精彩文章推荐:

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

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

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

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
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
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Karen110 Karen110
3年前
​一篇文章总结一下Python库中关于时间的常见操作
前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Wesley13 Wesley13
3年前
4cast
4castpackageloadcsv.KumarAwanish发布:2020122117:43:04.501348作者:KumarAwanish作者邮箱:awanish00@gmail.com首页:
Stella981 Stella981
3年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这