python 如何在Robot Framework中转换查询结果

bvhaajcl  于 2023-11-15  发布在  Python
关注(0)|答案(3)|浏览(118)

我正在运行下面的查询:

${points}    Query    select points from table

字符串
它给了我下面的结果:

[(Decimal('357.0000'),)]


如何将上述结果转换为浮点数?我想将其与另一个浮点数值进行比较
我已经试过使用转换为.关键字
谢谢大家的帮助

goucqfw6

goucqfw61#

如果你想检查是否相等。为什么不尝试应该等于数字关键字?如果对象在转换为真实的数字后不相等,它将失败。

Should Be Equal As Numbers    ${points}   ${another_float_value}

字符串
如果你想检查其中一个值是否大于或小于另一个值,我想你可以使用EvaluateShould Be True

Should Be True    '${points}' > '${another_float_value}'


如果我没有弄错的话,上面的例子将帮助你检查 points 是否大于 another_float_value

k4emjkb1

k4emjkb12#

我已经找到了一个解决方案-db查询的返回值是一个元组列表(这就是为什么我的值等于[(December('357.0000'),)])我所要做的就是获取元组的第一个元素-在我的情况下

${points[0][0]}

字符串
当比较两个值时:

Should Be True    ${points[0][0]} > ${points2[0][0]}

shyt4zoc

shyt4zoc3#

这是它:

from decimal import Decimal, getcontext
getcontext().prec = 4
a=[(Decimal('357.0000'),)]

print(float([t[0] for t in a][0]))

字符串
产出:

357.0

相关问题