在 lxml objectify python 中将 int 元素更改为 str 元素

Change int element to str element in lxml objectify python

希望有人能提供帮助。

我正在使用 lxml objectify 来解析 xml,它是使用 objectify.fromstring() 从第三方集成返回的。我的 xml 中有一个元素,有时仅包含整数 0-9,当它是整数时,仅删除前导零。由于没有返回多少位数的固定数字,而且有时数字前可能有 2 个字母,因此用零填充值是不够的。

有没有一种方法可以指定 lxml objectify 以在执行 objectify.fromstring() 之前将类型强制为字符串,以便它保留在 xml 中收到的值?

我查看了 lxml 网站,但似乎找不到我要找的东西。

非常感谢

您可能也遇到过这种行为:

>>> from lxml import objectify
>>> 
>>> xml = "<a><b>01</b></a>"
>>> a = objectify.fromstring(xml)
>>> print(a.b)
1
>>> print(a.b.text)
01

如您所见,如果您获得 .text 属性,您将按原样获得节点文本。

仅供参考,创建了一个后续主题: