【问题标题】:Return True if string can be converted into float如果字符串可以转换为浮点数,则返回 True
【发布时间】:2015-05-28 12:54:42
【问题描述】:

我希望我的程序

  • 要求用户输入字符串文本。
  • 如果字符串包含有效的浮点数,则打印 True,并且可以使用 float 函数安全地转换为浮点数。
  • 否则打印 False,即如果字符串不包含有效的浮点数,并且 float(text) 会产生错误消息。

这是我迄今为止尝试过的。

`text = input("enter a string: ")`
 text = text.strip()
 float_check = float()

 for char in text:
      if text == float_check:
          print("true")
          break
      else:
          print("False")
          break

【问题讨论】:

  • 为什么不尝试转换它?
  • 我希望它打印(“true”),而不是返回 True

标签: python-3.x for-loop input


【解决方案1】:
def is_float(string):
    try:
        float(string)
        return True
    except ValueError:
        return False

然后回答问题:

print(is_float(text))

【讨论】:

  • 我希望它打印(“true”),而不是返回 True
  • 编辑了答案。请注意,尽管它修复了您的打印语句中的不一致(true 不是大写,而 false 是,不确定这是不是拼写错误)
猜你喜欢
  • 2021-04-04
  • 2013-02-14
  • 2011-11-25
  • 2012-02-17
  • 1970-01-01
  • 1970-01-01
  • 2019-04-21
  • 2010-12-28
  • 2014-09-25
相关资源
最近更新 更多