python学习笔记,python处理 Excel、Word、PPT 以及邮件自动化办公

文章目录

  • 前言
  • 一、环境搭建
    • [1. 下载 Python](#1. 下载 Python)
    • [2. 安装 Python](#2. 安装 Python)
  • [二、处理 Excel 文件(openpyxl库)](#二、处理 Excel 文件(openpyxl库))
  • [三、 处理 Word 文件(python-docx库)](#三、 处理 Word 文件(python-docx库))
  • [四、 处理 PPT 文件(python-pptx库)](#四、 处理 PPT 文件(python-pptx库))
  • [五、 自动发送邮件(smtplib和email库)](#五、 自动发送邮件(smtplib和email库))

前言

Python 办公自动化是利用 Python 语言来自动处理办公场景中常见的重复性任务,从而提高工作效率。下面为你介绍在处理 Excel、Word、PPT 以及邮件发送等方面实现办公自动化的方法和示例代码。


一、环境搭建

1. 下载 Python

访问 Python 官方网站,根据你的操作系统(Windows、Mac OS、Linux)选择合适的 Python 版本进行下载。建议下载 Python 3.x 版本,因为 Python 2 已经停止维护。

还可以从小编准备地址下载。

Python 3.7下载地址:https://pan.quark.cn/s/8268bf81f31f
Python 3.9下载地址:https://pan.quark.cn/s/9711a93276ad
Python 3.11下载地址:https://pan.quark.cn/s/9c44793cb24c

2. 安装 Python

访问 Python 官方网站(https://www.python.org/),根据自己的操作系统(Windows、MacOS、Linux)下载并安装 Python 3.x 版本。安装过程中注意勾选 "Add Python to PATH",以便在命令行中能直接使用 Python。

Python 3.7安装教程:https://blog.csdn.net/u014164303/article/details/145620847
Python 3.9安装教程:https://blog.csdn.net/u014164303/article/details/145570561
Python 3.11安装教程:https://blog.csdn.net/u014164303/article/details/145549489

二、处理 Excel 文件(openpyxl库)

  • openpyxl 是一个用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。

  • 示例代码:创建并写入 Excel 文件

c 复制代码
from openpyxl import Workbook

# 创建一个新的工作簿
wb = Workbook()

# 获取活动工作表
ws = wb.active

# 设置表头
headers = ['姓名', '年龄', '职业']
ws.append(headers)

# 添加数据行
data = [
    ['张三', 25, '工程师'],
    ['李四', 30, '教师'],
    ['王五', 28, '设计师']
]

for row in data:
    ws.append(row)

# 保存工作簿
wb.save('employees.xlsx')
  • 示例代码:读取 Excel 文件
c 复制代码
from openpyxl import load_workbook

# 加载工作簿
wb = load_workbook('employees.xlsx')

# 获取活动工作表
ws = wb.active

# 遍历每一行并打印数据
for row in ws.iter_rows(values_only=True):
    print(row)

三、 处理 Word 文件(python-docx库)

  • python-docx 可以创建、修改和读取 Word 文档。
c 复制代码
from docx import Document

# 创建一个新的文档
doc = Document()

# 添加标题
doc.add_heading('Python办公自动化', level=1)

# 添加段落
doc.add_paragraph('这是一个使用 Python 生成的 Word 文档示例。')

# 添加列表
doc.add_paragraph('以下是一些要点:', style='List Bullet')
points = ['自动化提高效率', '减少人为错误', '代码可复用']
for point in points:
    doc.add_paragraph(point, style='List Bullet')

# 保存文档
doc.save('example.docx')
  • 示例代码:读取 Word 文档
c 复制代码
from docx import Document

# 打开文档
doc = Document('example.docx')

# 遍历段落并打印内容
for paragraph in doc.paragraphs:
    print(paragraph.text)

四、 处理 PPT 文件(python-pptx库)

  • python-pptx 用于创建和修改 PowerPoint 演示文稿。
  • 示例代码:创建 PPT 演示文稿
c 复制代码
from pptx import Presentation
from pptx.util import Inches

# 创建一个新的演示文稿
prs = Presentation()

# 添加标题幻灯片
title_slide_layout = prs.slide_layouts[0]
slide = prs.slides.add_slide(title_slide_layout)
title = slide.shapes.title
subtitle = slide.placeholders[1]

# 设置标题和副标题
title.text = "Python办公自动化"
subtitle.text = "让工作更高效"

# 添加内容幻灯片
content_slide_layout = prs.slide_layouts[1]
slide = prs.slides.add_slide(content_slide_layout)
shapes = slide.shapes

title_shape = shapes.title
body_shape = shapes.placeholders[1]

# 设置标题和内容
title_shape.text = "主要优点"
tf = body_shape.text_frame
tf.text = "自动化提高效率"

# 保存演示文稿
prs.save('presentation.pptx')

五、 自动发送邮件(smtplib和email库)

  • 可以使用 smtplib 来发送邮件,email 库用于构建邮件内容。
  • 示例代码:发送简单文本邮件
c 复制代码
import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 发件人邮箱和授权码
sender = 'your_email@example.com'
password = 'your_email_password'

# 收件人邮箱
receivers = ['recipient_email@example.com']

# 邮件内容
message = MIMEText('这是一封使用 Python 自动发送的邮件。', 'plain', 'utf-8')
message['From'] = Header(sender, 'utf-8')
message['To'] = Header(", ".join(receivers), 'utf-8')
message['Subject'] = Header('Python 邮件测试', 'utf-8')

# 连接 SMTP 服务器并发送邮件
try:
    smtpObj = smtplib.SMTP('smtp.example.com', 25)
    smtpObj.login(sender, password)
    smtpObj.sendmail(sender, receivers, message.as_string())
    print("邮件发送成功")
except smtplib.SMTPException:
    print("邮件发送失败")
finally:
    smtpObj.quit()
相关推荐
Csvn10 小时前
🌟 LangChain 30 天保姆级教程 · Day 13|OutputParser 进阶!让 AI 输出自动转为结构化对象,并支持自动重试!
python·langchain
cch891811 小时前
Python主流框架全解析
开发语言·python
sg_knight11 小时前
设计模式实战:状态模式(State)
python·ui·设计模式·状态模式·state
好运的阿财11 小时前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
张張40812 小时前
(域格)环境搭建和编译
c语言·开发语言·python·ai
weixin_4235339912 小时前
【Windows11离线安装anaconda、python、vscode】
开发语言·vscode·python
Ricky111zzz12 小时前
leetcode学python记录1
python·算法·leetcode·职场和发展
小白学大数据12 小时前
Selenium+Python 爬虫:动态加载头条问答爬取
爬虫·python·selenium
Hui Baby12 小时前
springboot读取配置文件
后端·python·flask
阿Y加油吧13 小时前
回溯法经典难题:N 皇后问题 深度解析 + 二分查找入门(搜索插入位置)
开发语言·python