also der Inhalt von n wird ausgegeben und das "TEST" nicht!
weiß jemand warum ?!
Code: Alles auswählen
for element in doc.getElementsByTagName("name"):
n=element.firstChild.data
print n
if n == "Walther":
print "TEST"
Code: Alles auswählen
for element in doc.getElementsByTagName("name"):
n=element.firstChild.data
print n
if n == "Walther":
print "TEST"
Code: Alles auswählen
if str(n) == "Walther":
Code: Alles auswählen
for book in dom.getElementsByTagName('book'):
print "<tr>"
for item in ['author','title','publisher']:
node = book.getElementsByTagName (item)[0]
td( getText(node.childNodes) )
Code: Alles auswählen
<tr>
<th>Autor(en)</th><th>Titel</th><th> Verlag</th>
</tr>
<tr>
<td>Mark Lutz</td> <td>Programming Python</td> <td>O'Reilley</td>
</tr>
<tr>
<td>C. Jones F. Drake, Jr.</td> <td>Python XML</td> <td>O'Reilley</td>
</tr>
Code: Alles auswählen
from xml.dom.ext.reader.Sax2 import FromXmlStream
import sys
import Blender
from Blender import Scene
doc = FromXmlStream("c:/test.xml")
for element in doc.getElementsByTagName("name"):
element.normalize()
print "NAME: " + element.firstChild.data
if getText(element.firstChild.data) == "Walther":
scene = Blender.Load("C:/test.blend")
sc=Scene.GetCurrent()
sc.setLayers([2])
sc.update()
rc=sc.getRenderingContext()
rc.renderAnim()
Als das print n liefert "Walther" ??? dann mach doch noch ein print type(n) und ein print str(n)abstract hat geschrieben:also der Inhalt von n wird ausgegeben und das "TEST" nicht!Code: Alles auswählen
n=element.firstChild.data print n if n == "Walther": print "TEST"
Code: Alles auswählen
<?xml version="1.0" encoding="ISO-8859-1" ?>
- <story>
- <owner>
<gender>m</gender>
<surname>Guenther</surname>
<name>Walther</name>
<ID>0</ID>
</owner>
- <setting>
- <avatar>
<a_name>Paul</a_name>
<a_gender>m</a_gender>
<hair>2</hair>
<wear>17</wear>
</avatar>
- <background>
- <picture>
<url>stadium.jpg</url>
</picture>
</background>
<storymodel>standard</storymodel>
</setting>
</story>
Das ist schon klarabstract hat geschrieben:ähhm also das print war nur zum testen. es geht um die if anweisung (siehe oben)
Code: Alles auswählen
from xml.dom.minidom import parse, parseString
doc = parse("test.xml")
for element in doc.getElementsByTagName("name"):
element.normalize()
print "NAME: " + element.firstChild.data
print type(element.firstChild.data)
if element.firstChild.data == "Walther":
print "OK"
Code: Alles auswählen
NAME: Walther
<type 'unicode'>
OK
Code: Alles auswählen
from xml.dom.ext.reader.Sax2 import FromXmlStream
import sys
doc = FromXmlStream("test.xml")
for element in doc.getElementsByTagName("name"):
element.normalize()
data = element.firstChild.data
print "NAME: " + data
if data == "Walther":
print "TEST"
Code: Alles auswählen
def getText(nodelist):
lst = []
for node in nodelist:
if node.nodeType == node.TEXT_NODE:
lst.append(node.data)
return ''.join(lst)
Code: Alles auswählen
<?xml version="1.0"?>
<name>Walther</name>