【问题标题】:Issue with rounding number in robotframework机器人框架中的舍入数问题
【发布时间】:2015-04-11 04:18:41
【问题描述】:

我在用 500 舍入时遇到问题。我在下面给出我的例子,想看看我如何解决这个问题。

示例: 这里我根据应用程序的值进行计算:

{expectedResults} = 2242.31 {收入} = 7166.67

${expectedResults}= 评估 (${expectedResults} / ${income})*100 ${expectedResults}= 转换为数字 ${expectedResults} 2

我的结果会是:31.29%

但是如果我得到像 30.0001 这样的结果,那么我得到的值是 30.0 而不是 30.00。我想将值设为 30.00 但无法找到解决方案。谁能给我解决这个问题的方法?提前谢谢你。

【问题讨论】:

    标签: robotframework


    【解决方案1】:

    如果您已经在使用 evaluate - 请多用一点。

    ${expectedResults}=  Evaluate  "%.2f" % ${expectedResults} 
    

    完整解决方案:

    *** Testcases ***
    Hello Computation
      ${expectedResults}=  Evaluate  (${expectedResults} / ${income})*100
      ${expectedResults}=  Convert To Number  ${expectedResults}  2
      ${expectedResults}=  Evaluate  "%.2f" % ${expectedResults}
      Log  ${expectedResults}
      Log to Console  ${expectedResults}
    
    *** Variables ***
    ${expectedResults}  2242.31
    ${income}  7166.67
    

    【讨论】:

    • 感谢您的回复。我仍然无法解决这个问题。当我尝试使用上述解决方案时,我得到 FAIL : ImportError: Import by filename is not supported。例如:${expectedResults}= 评估“%.2f”%(${expectedResults} / ${income})*100。我可以像下面这样使用它吗:${expectedResults}= 转换为数字 ${expectedResults} %.2f.
    • 我已更新答案以包含完整示例。我假设您的机器人代码包含问题中未突出显示的一些重要差异
    • 谢谢。我会试试这个,看看能不能解决这个问题。
    • 通过这一步评估 "%.2f" % ${expectedResults} 当值是 0.365 然后它向下舍入到 0.36 而不是 0.37,任何人都可以给出适当的解决方案来获得 0.37 而不是 0.36例子?谢谢
    猜你喜欢
    • 2020-10-27
    • 2020-10-24
    • 2013-01-26
    • 1970-01-01
    • 2021-07-17
    • 2020-10-22
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    相关资源
    最近更新 更多