如何改变<a><a/>pythonlxml之间的值

How to change the value between <a><a/> python lxml

所以我有一个 xml 文件,我想在其中存储一个字符串。

我尝试了我在其他问题上发现的一切,甚至将值存储在属性中

这是我的 .xml 文件:

<a>value<a/>

我需要根据用户输入更改 'value'。

def log(self):
    self.tree = etree.fromstring('info.xml')
    self.sh = self.tree.find('a')
    self.inusr = input('Your new username: ')
    self.sh.set('user', self.inusr)

这个尝试的问题是它只改变了用户属性值。为了修复它,我尝试删除最后一行中的属性,但它不起作用。

属性 text 可能会有帮助: my.xml:

<data>
    <a>value1</a>
    <a>value2</a>
</data>

main.py:

import xml.etree.ElementTree as ET

tree = ET.parse('my.xml')
sh_list = tree.findall('a')
inusr = input('Your new username: ')
for sh in sh_list:
        sh.text = inusr
tree.write('my.xml')

输入:

myname

已更改 my.xml:

<data>
    <a>myname</a>
    <a>myname</a>
</data>