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 = '[email protected]'
password = 'your_email_password'

# 收件人邮箱
receivers = ['[email protected]']

# 邮件内容
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()
相关推荐
Amo Xiang4 小时前
Python 解释器安装全攻略(适用于 Linux / Windows / macOS)
linux·windows·python·环境安装
程序员杰哥4 小时前
接口自动化测试之pytest 运行方式及前置后置封装
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
浩皓素5 小时前
用Python开启游戏开发之旅
python
hello kitty w5 小时前
Python学习(6) ----- Python2和Python3的区别
开发语言·python·学习
互联网杂货铺7 小时前
功能测试、性能测试、安全测试详解
自动化测试·软件测试·python·功能测试·测试工具·性能测试·安全性测试
土豆杨6267 小时前
隐藏层-机器学习
python·机器学习
Dxy12393102168 小时前
DrissionPage调试工具:网页自动化与数据采集的革新利器
爬虫·python·drissionpage
不争先.9 小时前
URL 结构说明+路由(接口)的认识
python·pycharm·flask·apifox
(・Д・)ノ9 小时前
python打卡day44
人工智能·python·机器学习
胡西风_foxww9 小时前
Python 入门到进阶全指南:从语言特性到实战项目
开发语言·python·快速入门