个人技术分享

Python根据预设txt生成“你画我猜”题目PPT(素拓活动小工具)


场景来源

  • 去年单位内部的一次素拓活动,分工负责策划设置其中的“你画我猜”环节,网络上搜集到题目文字后,想着如何快速做成对应一页一页的PPT。
  • 第一时间想到几乎无所不能的python,便开始搜寻相关第三方库,于是找到了:python-pptx

前置准备

  • 当然是要事先安装相关的第三方库:pip install python-pptx
  • 一个放有题目的txt文本文件,每一行都是一道题目。
  • 图片1

代码思路

  1. 新建一个Presentation对象,设置好幻灯片版式

     from pptx import Presentation
     # 创建一个新的 Presentation 对象
     prs = Presentation()
     # 获取一个包含主标题和副标题的幻灯片版式
     title_slide_layout = prs.slide_layouts[0]
    
  2. 打开输入的txt文件,分行读入,生成对应的PPT页面

     # 打开输入的txt文件
     with open("题目.txt", 'r', encoding='utf-8') as f_in:
         # 读取所有行
         lines = f_in.readlines()
         # 遍历每一行
         for line in lines:
             # 将幻灯片加入到PPT中
             slide = prs.slides.add_slide(title_slide_layout)
             # 获取主标题
             title = slide.placeholders[0]
             # 设置主标题文字为每一行的题目文字
             title.text = line.strip()
    
  3. 将Presentation对象保存为PPT文件,结束

     # 保存创建的PPT文件
     prs.save('你画我猜.pptx')
    

完成效果

  • 每一个题目都作为一张独立的PPT,方便素拓活动中一页一页的过,给参赛队伍答题。
  • 图片2

后注