上几篇中,学习了是用python进行简单的word文档的创建,内容获取,以及内容修改,本篇继续python操作word之旅:利用python给word文档加入表格。
传送门:
Python3-word文档操作(一):利用python创建word文档,并且设置标题和正文的内容,设置字体样式
Python3-word文档操作(二):利用python获取word文档的内容
Python3-word文档操作(三):利用python修改word文档的内容
表格内容:
作者
朝代
李白
唐
杜甫
唐
苏轼
宋
代码如下:
# -*- coding: utf-8 -*-
import os
import sys
import time
#from docx import Document
import docx
from docx.shared import RGBColor
def create_doc_table():
doc_name = "念奴娇_赤壁怀古.docx"
doc = docx.Document(doc_name)
#表格数据
field_list = ["作者","朝代"]
content_list = [["李白","唐"],["杜甫","唐"],["苏轼","宋"]]
table = doc.add_table(rows=4, cols=len(field_list))
#表格样式
table.style = 'Light List Accent 1'
#表格各个列的标题
cells = table.rows[0].cells
for i in range(len(field_list)):
cells[i].text = field_list[i]
#表格内容
for rows_id in range(3):
item = content_list[rows_id]
row_cells_data = table.rows[rows_id+1].cells
for i in range(len(field_list)):
row_cells_data[i].text = item[i]
time_str = str(time.time())
print("time_str====",time_str)
#新文档的文件名
new_doc_name = "念奴娇_赤壁怀古_" + time_str+".docx"
doc.save(new_doc_name)
if __name__ == '__main__':
#create_doc()
#fetch_doc()
#update_doc()
create_doc_table()
运行结果:
生成了带有表格的word文档,如下图
说明:
1)doc.add_table(rows=4, cols=len(field_list)): 创建一个表格;
2)table.rows[0].cells:获取一个表格的所有的列;
3)table.rows[rows_id+1].cells: 获取一个表格的单元格



