parsing XML
Stefan Behnel
stefan_ml at behnel.de
Fri May 14 11:22:47 EDT 2010
kaklis at gmail.com, 14.05.2010 16:57:
> Hi to all, let's say we have the following Xml
> <team>
> <player name='Mick Fowler' age='27' height='1.96m'>
> <points>17.1</points>
> <rebounds>6.4</rebounds>
> </player>
> <player name='Ivan Ivanovic' age='29' height='2.04m'>
> <points>15.5</points>
> <rebounds>7.8</rebounds>
> </player>
> </team>
>
> How can i get the players name, age and height?
Here's an overly complicated solution, but I thought that an object
oriented design would help here.
import xml.etree.ElementTree as ET
class Player(object):
def __init__(self, name, age, height):
self.name, self.age, self.height = name, age, height
attributes = ['name', 'age', 'height']
players = []
for _, element in ET.iterparse("teamfile.xml"):
if element.tag == 'player':
players.append(
Player(*[ element.get(attr) for attr in attributes ]))
for player in players:
print player.name, player.age, player.height
Stefan
More information about the Python-list
mailing list