【问题标题】:Evaluating negative numbers using powershell使用 powershell 评估负数
【发布时间】:2018-01-28 04:48:12
【问题描述】:

我在使用 Powershell 评估负数时遇到问题。 在本例中,-0.36 应该小于 -0.01。所以 $Bad_Note 应该是 0 而不是 1

$Note = "0, -0.36"
$Markup_Discount = ($Note -split ',')[1].trim()
$Markup_Discount 
$Bad_Note = 0
if ($Markup_Discount -gt -0.01) {$Bad_Note = 1}
$Bad_Note

【问题讨论】:

    标签: powershell


    【解决方案1】:

    我认为您正在尝试将 [string] 与 [float] 进行比较。 只需在字符串之前添加 [float] 即可将其转换为浮点数(但请注意您需要确保它可以正常工作)。

    像这样:

    $Note = "0, -0.36"
    $Markup_Discount = [float]($Note -split ',')[1].trim()
    $Markup_Discount 
    $Bad_Note = 0
    if ($Markup_Discount -gt -0.01) {$Bad_Note = 1}
    $Bad_Note
    

    或者这个(如你所愿):

    $Note = "0, -0.36"
    $Markup_Discount = ($Note -split ',')[1].trim()
    $Markup_Discount 
    $Bad_Note = 0
    if ([float]$Markup_Discount -gt -0.01) {$Bad_Note = 1}
    $Bad_Note
    

    玩得开心:)

    【讨论】:

      猜你喜欢
      • 2014-12-31
      • 1970-01-01
      • 2015-10-20
      • 2021-05-09
      • 2014-06-03
      • 2016-05-21
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      相关资源
      最近更新 更多