0
下面的代碼給出了錯誤: 線19,在modifyXML self.PreFlopCallPower.text = 'NEW VALUE' AttributeError的: 'STR' 對象具有沒有屬性「文本」修改XML與ElementTree的: 'STR' 對象沒有屬性 '文本'
問題似乎是self.PreFlopCallPower只是一個字符串,而不是一個elementTree對象,即使我的示例與python etree文檔中給出的示例非常相似:self.PreFlopCallPower = entry .find( 'PreFlopCallPower')。文字。我怎樣才能解決這個問題?我看不到我在做什麼這裏列出的更新示例不同:https://docs.python.org/2/library/xml.etree.elementtree.html
import xml.etree.ElementTree as xml
class XMLHandler(object):
def __init__(self,StrategyName):
self.readXML(StrategyName)
self.modifyXML()
def readXML(self, StrategyName):
self.Template = StrategyName
self.tree = xml.parse('strategies.xml')
self.root = self.tree.getroot()
for entry in self.root.findall('Strategy'):
if entry.get('name') == StrategyName:
self.PreFlopCallPower = entry.find('PreFlopCallPower').text
def modifyXML (self):
self.PreFlopCallPower.text = 'NEW VALUE' # ---ERROR OCCURS HERE---
self.PreFlopCallPower.set('updated', 'yes')
self.tree.write('output.xml')
X=XMLHandler('Strategy305PP')