Generating header information using ElementTree

Diez B. Roggisch deets at nospam.web.de
Sun Nov 26 17:22:50 EST 2006


Craig schrieb:
> Fredrik Lundh wrote:
> 
>> Craig wrote:
>>
>>> I'm only new to Python so please bear with me.  I using ElementTree to
>>> generate an XML file that will reference a DTD and an XSL file.  The
>>> header information I want at the start of the file is as follows:
>>>
>>> <?xml version="1.0"?>
>>> <?xml-stylesheet type="text/xsl" href="test.xsl"?>
>>> <!DOCTYPE BobActivityLog SYSTEM "test.dtd">
>>>
>>> How do you add this header information to the tree
>> to the file, you mean?  use print.
>>
>> </F>
> 
> Thanks for the quick response.  Here is the code I am using to manually
> write to the file is:
> 
>     outFile = open("record.xml", 'w')
>     outFile.write = ("<?xml version=\"1.0\"?>\n")
>     outFile.write = ("<?xml-stylesheet type=\"text/xsl\"
> href=\"test.xsl\"?>\n")
>     outFile.write = ("<!DOCTYPE BobActivityLog SYSTEM \"test.dtd\">\n")
>     outFile.close()
> 
> When I run the code I get the following error message:
> 
> Traceback (most recent call last):
>   File "bob-xml.py", line 189, in <module>
>     main()
>   File "bob-xml.py", line 173, in main
>     outFile.write = ("<?xml version=\"1.0\"?>\n")
> AttributeError: 'file' object attribute 'write' is read-only
> 
> What am I doing wrong here?  If anyone could help that would be
> appreciated.  Thanks again.

write is a method, not a property.

outFile.write("whatever")

is the way to go...

Diez



More information about the Python-list mailing list