对不起,我不得不再问一次。你知道吗
我想通过xml.etree.ElementTree
将xml文件转换为excel。你知道吗
假设我的xml看起来像:
<ParameterCluster> <Name>AAAAAA</Name> <ParameterDefinitionList> <ParameterDefinition> <Name>LengthMin</Name> <Type>UInt8</Type> </ParameterDefinition> <ParameterDefinition> <Name>LengthMax</Name> <Type>UInt8</Type> </ParameterDefinition> </ParameterDefinitionList> <VariantImlementationList> <VariantImlementation> <MajorVariantList> <MajorVariant>A_Basis</MajorVariant> </MajorVariantList> <MinorVariantList> <ParameterValue> <ValueList> <Value>47</Value> </ValueList> <ValueList> <Value>80</Value> </ValueList> </ParameterValue> </MinorVariantList> <MajorVariantList> <MajorVariant>B_Basis</MajorVariant> <MajorVariant>C_Basis</MajorVariant> </MajorVariantList> <MinorVariantList> <ParameterValue> <ValueList> <Value>47</Value> </ValueList> <ValueList> <Value>40</Value> </ValueList> </ParameterValue> </MinorVariantList> </VariantImlementation> </VariantImlementationList> </ParameterCluster>
也就是说,我有3
基础(A_basis
,B_basis
,C_basis
)。你知道吗
在A_ Basis
中,LengthMin
的值是47
,LengthMax
的值是80
。你知道吗
但是在B_basis
和C_Basis
中。LengthMin
的值是47
,LengthMax
的值是40
。你知道吗
所以我想得到这样的东西:
{'AAAAAA','LengthMin','UInt8','A_Basis',47}
{'AAAAAA','LengthMax','UInt8','A_Basis',80}
{'AAAAAA','LengthMin','UInt8','B_Basis',47}
{'AAAAAA','LengthMax','UInt8','B_Basis',40}
{'AAAAAA','LengthMin','UInt8','C_Basis',47}
{'AAAAAA','LengthMax','UInt8','C_Basis',40}
然后我可以把它写进excel文件。有可能得到这样的名单吗?你知道吗
对于解析XML,可以使用
BeautifulSoup
而不是xml.etree.ElementTree
(界面更直观)。你知道吗解析非常简单(假设
ParameterValue
的长度始终与ParameterValue.ValueList
相同:首先需要提取参数类型,然后遍历所有<MajorVariant>
并填充结果列表。你知道吗如果BeautifulSoup不是问题,下面是示例代码:
输出:
相关问题 更多 >
编程相关推荐