p & br using ElementTree?

Robert Kern robert.kern at gmail.com
Wed Jun 27 06:48:38 CEST 2007

Jan Danielsson wrote:
> Hello all,
>    This is probably a mind numbingly brain dead question.. But how do I
> generate the following:
> <p>Current date:<br/>2000-01-01</p>
>    ..using ElementTree? The <p> element kind of needs two text blocks,
> as far as I can tell?

Use the .tail attribute on the br element:

In [1]: from xml.etree import ElementTree as ET

In [4]: p = ET.Element('p')

In [5]: p.text = 'Current date:'

In [6]: br = ET.SubElement(p, 'br')

In [7]: br.tail = '2000-01-01'

In [8]: ET.dump(p)
<p>Current date:<br />2000-01-01</p>

Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
 that is made terrible by our own mad attempt to interpret it as though it had
 an underlying truth."
  -- Umberto Eco

More information about the Python-list mailing list