首页 > 编程语言 >手把手教你用Python操纵Word自动编写离职报告

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

时间:2023-04-21 10:32:25浏览次数:50  
标签:docx Word Python 教你用 add paragraph import run document


不堪玄鬓影,来对白头吟。

前言

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

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

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

安装

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自动编写离职报告_脚本语言_02

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

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

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


标签:docx,Word,Python,教你用,add,paragraph,import,run,document
From: https://blog.51cto.com/u_13389043/6212135

相关文章

  • Linux环境aspose插件word转pdf中文乱码解决方案
    本地没出现这个问题,到了linux环境出现了这个问题。第一想到的是字体。 解决方案1:环境解决安装字库,将win机器的c:\windows\fonts目录下的全部文件拷贝到生产服务器字体安装目录下,然后执行以下命令更新字体缓存。查看linux目前的所有字体fc-list查看Linux目前的所有中文......
  • [oeasy]python0135_命名惯用法_name_convention
    命名惯用法回忆上次内容上次了解了isidentifier的细节关于关键字关于下划线如何查询变量所指向的地址?id如何查询已有的各种变量?locals如果用一个变量a的值给另一个变量b赋值是什么样的过程呢??......
  • Sublime Text编辑器配置Python解释器简易教程
    今日鸡汤路漫漫其修远兮,吾将上下而求索。 前天在微信上遇到一个小伙伴问我一个关于Sublimetext配置Python解释器的问题,可能是初学者,对这方面还不是很懂,想使用快捷键但是徒劳一场,因为缺少Python解释器,直接按下快捷键Ctrl+B是不会得到想要的结果的。鉴于此,如果有小伙伴想使用Sub......
  • [oeasy]python0135_命名惯用法_name_convention
    命名惯用法回忆上次内容上次了解了isidentifier的细节关于关键字关于下划线 如何查询变量所指向的地址?id 如何查询已有的各种变量?locals 如果用一个变量a的值给另一个变量b赋值是什么样的过程呢??......
  • Ubuntu20.04 python3.8.10升级到python3.9
    为了部署opencv-python,安装了ubuntu20.04的虚拟机,很容易的安装了numpy、matplotlib、opencv模块。但python是3.8.10版本,网上学习视频的版本为3.9,所以也进行了升级。参考https://blog.csdn.net/wuxianbing2012/article/details/123532589,完成了本次升级。以下是参考博文的内容:......
  • Python openpyxl 的用法
    这里只教最实用的一种方法importopenpyxlwb=openpyxl.Workbook()#创建表格对象sheet=wb.worksheets[0]#获取当前表格(wb在创建时会自动创建一个sheet表格)sheet.cell(row=1,column=2,value="456")wb.save('test.xlsx')需要注意的是:sheet.cell函数的参数row,......
  • Python装饰器
    装饰器的作用——不想修改函数的调用方式,但是还想在原来的函数前后添加功能原则:开放封闭原则开放:对扩展是开放的封闭:对修改是封闭的装饰器的本质:闭包函数 装饰器用法 装饰不带参数的函数importtimedeftimmer(func):definner():sta......
  • python通过psutil获取服务器cpu,内存,磁盘使用率
    psutil是一个跨平台的Python库,它允许你获取有关系统进程和系统资源使用情况的信息。它支持Windows、Linux、OSX、FreeBSD、OpenBSD和NetBSD等操作系统,并提供了一些非常有用的功能,如:获取系统CPU使用率、内存使用率、磁盘使用率等信息。获取进程列表、进程状态、进程CPU使用率、......
  • java调用python脚本,用到tensorflow、keras等第三方库
    https://blog.csdn.net/jstlovely/article/details/121247764?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168110434116800227452800%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168110434116800227452800&......
  • python_面向对象
    魔法函数魔术访达的一些说明23-24魔术方法并不是来自继承,而是python自带的这些方法,跟类没有关系__getitem__方法因为实现了__getitem__(),所以可以直接遍历这个student对象__getitem__方法的参数item就是相当于数组的下标13行对象实例化对象进行切片操作......