我正在尝试使用Python docx模块解析一组特定的表数据。
我需要检索"当局"和各自的"版本"以键值格式,以便我可以使用该数据进行进一步处理。
如果我使用 -
,我无法迭代字典d = OrderedDict(zip(table.cell(rowNo, 0).text, table.cell(rowNo, 2).text))
给了我orderedDictionary但我无法使用d['Juno']
访问这些值
我希望能给我4.5.6
from docx import Document
document = Document('myfile.docx')
for table in document.tables:
printTable = False
rowNo = 0;
for row in table.rows:
for cell in row.cells:
if cell.text == "Table2":
printTable = False
if printTable:
print (table.cell(rowNo, 0).text + '=' + table.cell(rowNo, 2).text)
for cell in row.cells:
if cell.text == "Authorities":
printTable = True
rowNo += 1
我在解析后获得以下格式的数据 -
Juno=4.5.6
Acrux=3.5.6
Mars=5.6.7
答案 0 :(得分:1)
您可以定义字典并实现此目的 -
from docx import Document
document = Document('myfile.docx')
data = {}
for table in document.tables:
printTable = False
rowNo = 0;
for row in table.rows:
for cell in row.cells:
if cell.text == "Table2":
printTable = False
if printTable:
data[table.cell(rowNo, 0).text] = table.cell(rowNo, 2).text
for cell in row.cells:
if cell.text == "Authorities":
printTable = True
rowNo += 1
print (data)
将以字典格式提供预期的数据