【问题标题】:Converting Decimal to float gives warning unexpected type Decimal将 Decimal 转换为 float 会发出警告意外类型 Decimal
【发布时间】:2017-10-15 21:12:03
【问题描述】:

在我的代码中某处我有以下行

lambda el: float(el) if isinstance(el, Decimal) else el

我的 ide (pycharm) 警告我以下内容

意外类型:十进制

转换似乎没有问题。我想知道,这是虚惊一场吗?还是我应该小心小数到浮点数的转换?

此外,该消息似乎表明错误,我希望仅通过阅读该消息就可以破坏代码。事实并非如此。

【问题讨论】:

  • 顺便问一下,您打算引发异常吗?您的代码只会返回对象 TypeError。
  • 你能精确一下Pycharm、decimal、python的版本吗?如果我执行 `float(decimal.Decimal(3))' 我在 PyCharm 2017.2.3、Python 3.6.2 和 decimal 1.70 中没有收到任何警告
  • @Reti43 很好,我的意思是raise TypeError

标签: python type-conversion pycharm decimal


【解决方案1】:

issue 已在 PyCharm 2017.2.3 中修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    相关资源
    最近更新 更多