当前位置: 首页 > 面试题库 >

Python-如何检查字符串是否为数字(float)?

宰父俊民
2023-03-14
问题内容

检查字符串是否可以在Python中表示为数字的最佳方法是什么?

我目前拥有的功能是:

def is_number(s):
    try:
        float(s)
        return True
    except ValueError:
        return False

它不仅丑陋而且缓慢,看起来笨拙。但是我还没有找到更好的方法,因为调用float main函数甚至更糟。


问题答案:

不仅丑陋而且缓慢

我都对此表示怀疑。

正则表达式或其他字符串解析方法将更难看,更慢。

我不确定任何事情都可以比上述速度更快。它调用该函数并返回。Try / Catch不会带来太多的开销,因为最常见的异常是在没有大量搜索堆栈帧的情况下捕获的。

问题是任何数值转换函数都有两种结果

  • 一个数字(如果该数字有效)
  • 状态代码(例如,通过errno)或异常,表明无法解析有效数字。
    C(作为示例)以多种方式解决这一问题。Python清楚明确地列出了它。

我认为你执行此操作的代码是完美的。



 类似资料:
  • 问题内容: 如何检查,如果用户的字符串输入是一个数字(例如等)? 上面的方法不起作用,因为input总是返回一个字符串。 问题答案: 只需尝试将其转换为,然后在无法正常工作时对其进行救助。

  • 问题内容: Python是否有类似空字符串变量的内容,你可以在其中执行以下操作: 无论如何,检查空字符串值的最优雅方法是什么?我”“每次都很难检查空字符串,因此很难进行编码。 问题答案: 空字符串是“虚假的”,这意味着它们在布尔上下文中被认为是错误的,因此你可以执行以下操作: 如果你知道变量是字符串,则这是首选方式。如果你的变量也可以是其他类型,则应使用。有关在布尔上下文中为假的其他值,请参见“

  • 我有一个gpa程序,它使用方法,该方法比较字母“a”和用户输入的两个字符串,然后检查它们是否输入“a”。但现在我想添加一个异常,该异常在输入数字时会执行错误消息。我想让程序意识到整数输入与字符串不一样,并给出一个错误消息。我可以使用哪些方法来比较类型字符串变量和int类型的输入,并抛出异常?

  • 问题内容: 检查字符串是否可以在Python中表示为数字的最佳方法是什么? 我目前拥有的功能是: 它不仅丑陋且缓慢,而且看起来笨拙。但是我还没有找到更好的方法,因为调用floatmain函数甚至更糟。 问题答案: 如果您要解析(正数,无符号)整数而不是浮点数,则可以将该isdigit()函数用于字符串对象。 字符串方法- isdigit():Python2,Python3

  • 问题内容: 我发现的大多数问题都偏向于他们正在寻找数字中的字母这一事实,而我正在寻找我想成为无数字符串的数字。我需要输入一个字符串,并检查它是否包含任何数字以及是否确实拒绝它。 仅当所有字符均为数字时,该函数才返回。我只想看看用户是否输入了一个数字,例如“我拥有一只狗”之类的句子。 有任何想法吗? 问题答案: 你可以像这样使用函数和函数 另外,你可以使用正则表达式,如下所示

  • 问题内容: 在解析字符串之前,如何检查字符串是否为数字? java 字符串 数字 问题答案: 使用及更高版本:或。 使用Apache Commons Lang 3.4及以下版本:或。 你还可以使用返回true空字符串,并忽略字符串中的内部空格。另一种方法是使用根据Java基本检查数字是否可解析的方法。(链接的javadocs包含每种方法的详细示例。)