2015-03-25 75 views
2

我想我的程序返回True如果字符串可以转换成浮点

  • 要求用户输入一个字符串文本。
  • print如果字符串包含有效的浮点数,并且可以使用float函数安全地转换为浮点数,则为true。
  • print否则返回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 
+0

为什么不尝试将其转换? – 2015-03-25 01:03:45

+0

我希望它打印(“真”),不返回真 – Dom 2015-03-27 13:14:57

回答

3
def is_float(string): 
    try: 
     float(string) 
     return True 
    except ValueError: 
     return False 

,然后回答这个问题:

print(is_float(text)) 
+0

我希望它打印(“真”),不返回真 – Dom 2015-03-27 13:15:24

+0

编辑答案。请注意,它可以修复打印语句中的不一致性(true不是大写,而false是,不确定这是否是错字) – 2015-03-27 18:58:06