我注意到pyxb decimal
数据类型在呈现为 XML 时不会保留尾随零。罪魁祸首是normalize()
对函数以下行中的调用,即XsdLiteral
第 159 行binding/datatypes.py
:
(sign, digits, exponent) = value.normalize().as_tuple()
(其中value
是 Python 的一个实例decimal
)。这对我来说有点问题,因为我尝试与之交互的 Web 服务需要表单的版本号,X.000
而 pyxb 将其截断为X.0
.
这是预期的行为吗?或某些标准要求?其他 XML 模式生成库是否也这样做?我现在的解决方案是string
改用,但如果它不破坏任何东西,代码将很容易更改。