<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
場景:需要新建多個類似檔名
比如:今天的事例是新建12個檔名為:
保安員考試試卷1及答案.docx
保安員考試試卷2及答案.docx
...
保安員考試試卷12及答案.docx
痛點:
手動操作重複性高,出錯率高,易造成人疲勞,降低效率;
pip install python-docx
log
(env_qt) D:codeqt_demodemo>pip install python-docx
Looking in indexes: pypi.tuna.tsinghua.edu.cn/simple
Collecting python-docx
Using cached pypi.tuna.tsinghua.edu.cn/packages/8b…
33/python-docx-0.8.11.tar.gz (5.6 MB)
Preparing metadata (setup.py) ... done
Collecting lxml>=2.3.2
Downloading pypi.tuna.tsinghua.edu.cn/packages/39…
8/lxml-4.9.2-cp39-cp39-win_amd64.whl (3.9 MB)
---------------------------------------- 3.9/3.9 MB 1.4 MB/s eta 0:00:00
Building wheels for collected packages: python-docx
Building wheel for python-docx (setup.py) ... done
Created wheel for python-docx: filename=python_docx-0.8.11-py3-none-any.whl size=184519 sha256=595cd9888a3832964d8f2477f
fd5325f596549da8c1dd305e63d5f7b3d24884c
Stored in directory: c:userswzappdatalocalpipcachewheels39cac1d3e7abe5ce2e8423382d816e689c056bc26590f48fad8f2
0ac
Successfully built python-docx
Installing collected packages: lxml, python-docx
Successfully installed lxml-4.9.2 python-docx-0.8.11
[notice] A new release of pip available: 22.3.1 -> 23.0.1
[notice] To update, run: python.exe -m pip install --upgrade pip
(env_qt) D:codeqt_demodemo>****
官方檔案:
https://python-docx.readthedocs.io/en/latest/index.html
import os from docx import Document
解釋:
1.在檔案路徑下會獲取資料夾下面所有檔案,使用os
模組;
2.word檔案的相關操作使用docx
模組;
場景:需要新建多個類似檔名
比如:今天的事例是新建12個檔名為:
保安員考試試卷1及答案.docx
保安員考試試卷2及答案.docx
...
保安員考試試卷12及答案.docx
痛點:
手動操作重複性高,出錯率高,易造成人疲勞,降低效率;
def gen_names(pre_fix, num): """ 批次生成檔名 :param pre_fix: 檔名的字首 :param num: 檔案數量 :return:name_list :檔名列表(所有要生成的檔名) """ print("生成檔名列表開始") name_list = [] for i in range(1, num + 1): tmp = pre_fix + str(i) name_list.append(tmp) print("生成檔名列表結束") return name_list
生成單個檔案
def new_one_file(document, name): """ 生成單個檔案 :param document: :param name: 檔名 :return: """ print("單個生成檔案開始") document.save(name + '.docx') print("單個生成檔案結束")
生成多個檔案
def new_many_file(document, names): """ 生成多個檔案 :param document: Document範例物件 :param names:多個檔案的檔名 :return: """ print("批次生成檔案開始") for name in names: document.save(os.path.join("tmp", name + '.docx')) print("批次生成檔案結束")
def rename_file(path): """ 將path路徑下的檔案都重新命名 規則:在原檔名後面加上 ---> "及答案." 欄位 :param path: :return: """ print("重新命名開始") files = os.listdir(path) for file in files: name, doc_type = file.split(".") new_name = os.path.join(path, name + "及答案." + doc_type) file_tmp = os.path.join(path, file) # 語法: # os.rename(src, dst) :用於命名檔案或目錄 # src:需要修改的檔案或目錄名。 # dst:修改後的檔案或目錄名。 os.rename(file_tmp, new_name) print("重新命名結束")
def del_files(path): """ 刪除指定路徑下的檔案 :param path: :return: """ print("刪除開始") files = os.listdir(path) for file in files: os.remove(os.path.join(path, file)) print("刪除成功")
if __name__ == '__main__': path = r"C:UserswzDesktop保安員考試試卷" document = Document() pre_fix = "保安員考試" # name_all = gen_names(pre_fix, 10) # new_many_file(document, name_all) # rename_file("tmp") del_files("tmp")
批次生成檔案
批次重新命名檔案
刪除檔案
import os from docx import Document def gen_names(pre_fix, num): """ 批次生成檔名 :param pre_fix: 檔名的字首 :param num: 檔案數量 :return:name_list :檔名列表(所有要生成的檔名) """ print("生成檔名列表開始") name_list = [] for i in range(1, num + 1): tmp = pre_fix + str(i) name_list.append(tmp) print("生成檔名列表結束") return name_list def new_one_file(document, name): """ 生成單個檔案 :param document: :param name: 檔名 :return: """ print("單個生成檔案開始") document.save(name + '.docx') print("單個生成檔案結束") def new_many_file(document, names): """ 生成多個檔案 :param document: Document範例物件 :param names:多個檔案的檔名 :return: """ print("批次生成檔案開始") for name in names: document.save(os.path.join("tmp", name + '.docx')) print("批次生成檔案結束") def rename_file(path): """ 將path路徑下的檔案都重新命名 規則:在原檔名後面加上 ---> "及答案." 欄位 :param path: :return: """ print("重新命名開始") files = os.listdir(path) for file in files: name, doc_type = file.split(".") new_name = os.path.join(path, name + "及答案." + doc_type) file_tmp = os.path.join(path, file) # 語法: # os.rename(src, dst) :用於命名檔案或目錄 # src:需要修改的檔案或目錄名。 # dst:修改後的檔案或目錄名。 os.rename(file_tmp, new_name) print("重新命名結束") def del_files(path): """ 刪除指定路徑下的檔案 :param path: :return: """ print("刪除開始") files = os.listdir(path) for file in files: os.remove(os.path.join(path, file)) print("刪除成功") if __name__ == '__main__': path = r"C:UserswzDesktop保安員考試試卷" document = Document() pre_fix = "保安員考試" # 生成多個檔名 # name_all = gen_names(pre_fix, 10) #建立多個檔案 # new_many_file(document, name_all) # 重新命名檔案 # rename_file("tmp") # 刪除檔案 del_files("tmp")
以上就是Python實現批次生成,重新命名和刪除word檔案的詳細內容,更多關於Python word的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45