Im новый как для python, так и для xml. Посмотрите на предыдущие сообщения по этой теме, и я не могу понять, как делать именно то, что мне нужно. Хотя в принципе это довольно просто.проанализировать раздел XML-файла с помощью python
<Project>
<Items>
<Item>
<Code>A456B</Code>
<Database>
<Data>
<Id>mountain</Id>
<Value>12000</Value>
</Data>
<Data>
<Id>UTEM</Id>
<Value>53.2</Value>
</Data>
</Database>
</Item>
<Item>
<Code>A786C</Code>
<Database>
<Data>
<Id>mountain</Id>
<Value>5000</Value>
</Data>
<Data>
<Id>UTEM</Id>
<Value></Value>
</Data>
</Database>
</Item>
</Items>
</Project>
Все, что я хочу сделать, это извлечь все коды, значения и идентификаторы, что не представляет проблемы.
import xml.etree.cElementTree as ET
name = 'example tree.xml'
tree = ET.parse(name)
root = tree.getroot()
codes=[]
ids=[]
val=[]
for db in root.iter('Code'):
codes.append(db.text)
for ID in root.iter('Id'):
ids.append(ID.text)
for VALUE in root.iter('Value'):
val.append(VALUE.text)
print codes
print ids
print val
['A456B', 'A786C']
['mountain', 'UTEM', 'mountain', 'UTEM']
['12000', '53.2', '5000', None]
Я хочу знать, какие идентификаторы и значения идут с кодом. Возможно, что-то вроде словаря словарей или, возможно, списка DataFrames с индексом строки, являющимся Id, а заголовок столбца - кодом.
, например
A456B = {гора: 12000, ЮТЭЙ: 53,2}
A786C = {гора: 5000, ЮТЭЙ: Нет}
В конце концов, я хочу использовать значение кормить уравнение.
Обратите внимание, что настоящий xml-файл не может содержать одинаковое количество идентификаторов и значений в каждом коде. Кроме того, Id и Value могут отличаться от одного раздела кода к другому.
Извините, если этот вопрос элементарно, или неясно ... Я только делал питона за месяц:/
очень компактный! Очень хорошо работает в моих реальных xml-файлах. ти! – cmj29607