2016-01-24 3 views
0

Можно ли подключить переменную к атрибуту @name?python elementtree xpath - вставить переменную в findall @ name = VARIABLEHERE

import xml.etree.ElementTree as ET 
tree = ET.parse('C:/test.xml') 
root = tree.getroot() 

somelist = [x.text for x in root.findall(".//actionList[@name='VARIABLEHEREinsteadoftext']//value")] 

Мне нужно, чтобы получить все значения только из определенного ActionList отфильтрованы по его имени и игнорировать все остальные actionlists. Он отлично работает с

[@name="ACTIONLISTNAME"] 

, но Я бы хотел что-то вроде этого:

X = ACTIONLISTNAME 
[@name=X] 

Спасибо заранее!

ответ

1

Использование Строка форматирования:

value = "ACTIONLISTNAME" 
root.findall(".//actionList[@name='%s']//value" % value)