最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python讀取Excel批量寫(xiě)入到PPT并生成詞卡

 更新時(shí)間:2024年12月20日 09:11:16   作者:PythonFun  
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)讀取Excel并批量寫(xiě)入到PPT生成詞卡,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下

一、問(wèn)題的提出

有網(wǎng)友想把Excel表中的三列數(shù)據(jù),分別是:?jiǎn)卧~、音標(biāo)和釋義分別寫(xiě)入到PPT當(dāng)中,每一張PPT寫(xiě)一個(gè)單詞的內(nèi)容。這種批量操作是python的強(qiáng)項(xiàng),尤其是在辦公領(lǐng)域,它能較好地解放雙手,讀取Excel表后,批量寫(xiě)入到PPT的模板中。

詞卡

二、分析問(wèn)題

生成詞卡過(guò)程中要用到讀取Excel的openpyxl模塊,以及寫(xiě)入PPT用到的python-pptx模塊。先讀取單詞表,然后把每一行數(shù)據(jù)存到一個(gè)data列表當(dāng)中,然后利用pptx模塊構(gòu)建對(duì)象,獲取ppt模板中的第一張幻燈片,以及其母板中的第一個(gè)版本。接著遍歷data列表,通過(guò)添加slide,寫(xiě)入三個(gè)占位符中單詞、音標(biāo)和釋義等三列數(shù)據(jù),最后再保存為單詞卡pptx文件。

在編寫(xiě)代碼前要先在cmd下安裝這兩個(gè)模塊,代碼是:

pip install openpyxl, python-pptx

三、解決問(wèn)題

1. 準(zhǔn)備PPT母版

根據(jù)以上分析,我們先把PPT模板準(zhǔn)備好,在其中的母板上,找到第一個(gè)版式,自上而下插入三個(gè)占位符,此時(shí)還可以設(shè)置動(dòng)畫(huà)、顏色、字體等格式信息,然后保存。

母版樣式

2. 準(zhǔn)備單詞表

準(zhǔn)備好一張Excel表,放入我們準(zhǔn)備好的單詞表,命名為單詞表.xlsx,此表可以有表頭,也可以沒(méi)有表頭,為讀取和寫(xiě)入數(shù)據(jù)做準(zhǔn)備

Excel數(shù)據(jù)

3. 寫(xiě)入代碼

根據(jù)以上分析,我們編寫(xiě)出以下代碼:

# 導(dǎo)入必要庫(kù)
import os
from pptx import Presentation
from openpyxl import load_workbook
 
# 讀取 Excel 數(shù)據(jù)
try:
    wb = load_workbook(r"單詞表.xlsx")
    sheet = wb.active  # 默認(rèn)讀取第一個(gè)工作表
except FileNotFoundError:
    raise FileNotFoundError("文件 '單詞表1.xlsx' 未找到。")
 
# 檢查是否有數(shù)據(jù)
if sheet.max_row < 1:
    raise ValueError("Excel 文件中沒(méi)有有效的數(shù)據(jù)行。")
 
# 將數(shù)據(jù)按行存儲(chǔ)為列表
data = []
for row in sheet.iter_rows(min_row=1, values_only=True):  # 從第1行開(kāi)始讀取數(shù)據(jù)
    data.append(row)
 
print(data)
 
# 讀取母版文件構(gòu)建 PPT 的對(duì)象
try:
    my_ppt = Presentation(r"單詞模板.pptx")
except FileNotFoundError:
    raise FileNotFoundError("文件 '單詞模板.pptx' 未找到。")
 
# 模板中的第一張幻燈片
sld = my_ppt.slides[0]
 
if sld.shapes[0].has_text_frame:
    tf = sld.shapes[0].text_frame
    tf.text = "詞卡內(nèi)容"
 
# 獲取母版所有幻燈片布局
layout = my_ppt.slide_layouts
 
# 遍歷所有數(shù)據(jù)
for row in data:
    # 創(chuàng)建新幻燈片
    slide = my_ppt.slides.add_slide(layout[0])
    # 當(dāng)前幻燈片中的占位符
    placeholders = slide.shapes.placeholders
    for i, pl in enumerate(placeholders,1):
        if i < len(row):  # 確保占位符對(duì)應(yīng)的數(shù)據(jù)存在
            pl.text = str(row[i]) if row[i] is not None else ""
        else:
            pl.text = ""  # 如果數(shù)據(jù)不足,設(shè)置為空字符串
 
# 保存最終生成的 PPT
my_ppt.save("單詞卡.pptx")

四、注意事項(xiàng)

1. 注意路徑為當(dāng)前路徑,生成文件時(shí),一定要保持模板、Excel表都處在關(guān)閉的狀態(tài)當(dāng)中。

2. 注意模板中第一個(gè)版式要插入三個(gè)占位符,而不是文本框。

到此這篇關(guān)于Python讀取Excel批量寫(xiě)入到PPT并生成詞卡的文章就介紹到這了,更多相關(guān)Python讀取Excel寫(xiě)入PPT內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中os模塊的使用及文件對(duì)象的讀寫(xiě)詳解

    Python中os模塊的使用及文件對(duì)象的讀寫(xiě)詳解

    這篇文章主要介紹了Python中os模塊的使用及文件對(duì)象的讀寫(xiě)詳解,Python?open()?方法用于打開(kāi)一個(gè)文件,并創(chuàng)建返回文件對(duì)象,在對(duì)文件進(jìn)行處理過(guò)程都需要使用到這個(gè)函數(shù),如果該文件無(wú)法被打開(kāi),會(huì)拋出?OSError,需要的朋友可以參考下
    2023-08-08
  • PyCharm使用最多也最常用默認(rèn)快捷鍵分享

    PyCharm使用最多也最常用默認(rèn)快捷鍵分享

    這篇文章主要介紹了PyCharm使用最多也最常用默認(rèn)快捷鍵,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 記錄模型訓(xùn)練時(shí)loss值的變化情況

    記錄模型訓(xùn)練時(shí)loss值的變化情況

    這篇文章主要介紹了記錄模型訓(xùn)練時(shí)loss值的變化情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Windows下python3.6.4安裝教程

    Windows下python3.6.4安裝教程

    這篇文章主要為大家詳細(xì)介紹了Windows下python3.6.4安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Pandas之Dropna濾除缺失數(shù)據(jù)的實(shí)現(xiàn)方法

    Pandas之Dropna濾除缺失數(shù)據(jù)的實(shí)現(xiàn)方法

    這篇文章主要介紹了Pandas之Dropna濾除缺失數(shù)據(jù)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • python tkinter 獲得按鈕的文本值

    python tkinter 獲得按鈕的文本值

    這篇文章主要介紹了python tkinter 獲得按鈕的文本值,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 解決python中遇到字典里key值為None的情況,取不出來(lái)的問(wèn)題

    解決python中遇到字典里key值為None的情況,取不出來(lái)的問(wèn)題

    今天小編就為大家分享一篇解決python中遇到字典里key值為None的情況,取不出來(lái)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • 使用Python實(shí)現(xiàn)Markdown轉(zhuǎn)Word工具

    使用Python實(shí)現(xiàn)Markdown轉(zhuǎn)Word工具

    在日常工作中,我們經(jīng)常需要將Markdown格式的文檔轉(zhuǎn)換為Word格式,本文將介紹如何使用Python實(shí)現(xiàn)一個(gè)功能強(qiáng)大,使用簡(jiǎn)單的Markdown轉(zhuǎn)Word轉(zhuǎn)換工具,需要的可以參考一下
    2025-05-05
  • OpenCV半小時(shí)掌握基本操作之分水嶺算法

    OpenCV半小時(shí)掌握基本操作之分水嶺算法

    這篇文章主要介紹了OpenCV基本操作之分水嶺算法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Python六大開(kāi)源框架對(duì)比

    Python六大開(kāi)源框架對(duì)比

    在這篇文章里,我們將為Python Web開(kāi)發(fā)者回顧基于Python的6大Web應(yīng)用框架。無(wú)論你是出于愛(ài)好還是需求,這六大框架都可能會(huì)成為你工作上不錯(cuò)的得力助手。
    2015-10-10

最新評(píng)論

徐州市| 丘北县| 天津市| 芷江| 南雄市| 左云县| 商水县| 库车县| 崇阳县| 元阳县| 土默特左旗| 临沭县| 吉隆县| 南和县| 苏州市| 邯郸市| 二连浩特市| 邵阳市| 崇左市| 惠水县| 贡嘎县| 噶尔县| 深圳市| 丹巴县| 酉阳| 鄂托克前旗| 榆社县| 锡林郭勒盟| 浮山县| 张掖市| 米林县| 正安县| 罗平县| 广元市| 象州县| 张北县| 金坛市| 米林县| 石嘴山市| 白水县| 阳信县|