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

Python:将字符串转换为整数

陶温书
2023-03-14
问题内容

有没有人能将不安全的字符串转换为int

该字符串通常回来为:'234\r\n'或类似的东西。

在这种情况下,我要234。如果'-1\r\n'我想-1。我从不希望该方法失败,但是我不愿意尝试,除非通过它只是为了隐藏错误(以防万一发生极端情况)。


问题答案:

在这种情况下,您确实有一种避免try/的方法except,尽管我不建议这样做(假设您的输入字符串名为s,并且您处于必须返回某些内容的函数中):

xs = s.strip()
if xs[0:1] in '+-': xs = xs[1:]
if xs.isdigit(): return int(s)
else: ...

...在部分else就是你回什么是你想要比如说,如果s'iamnotanumber''23skidoo'空,全空间,等等。

除非您的许多输入字符串都是非数字的,否则try / except更好:

try: return int(s)
except ValueError: ...

您会看到简洁明了,并且避免了笨拙的字符串操作和测试!-)

我看到了很多答案int(s.strip()),但这是非常麻烦的:不需要剥离!

>>> int('  23  ')
23

int 知道足以独自忽略前导和尾随空格!-)



 类似资料:
  • 问题内容: 如何在JavaScript中将字符串转换为整数? 问题答案: 最简单的方法是使用本机函数: 如果这对您不起作用,则有 parseInt , 一元加号 , 带有floor的parseFloat 和 Math.round 方法。 parseInt: 一元加号,如果您的字符串已经是整数形式: 如果您的字符串是浮点数或可能是浮点数,并且您想要一个整数: 或者,如果您要多次使用Math.floo

  • 问题内容: 有什么方法可以将null转换为Integer。null实际上是一个字符串,我在我的服务层中传递该字符串,将其接受为整数。因此,每当我尝试将null字符串强制转换为Integer时,都会引发异常。但是我必须将null转换为Integer。 问题答案: 您 不能 从String强制转换为Integer。但是,如果您尝试将字符串转换为整数,并且必须提供处理字符串的实现,请查看以下代码片段:

  • 问题内容: 给定一个数字: 将其转换为字符串的“最佳”方法是: 问题答案: 有多种方法: (我的偏爱) (我不知道编译器如何处理它,也许它和上面一样有效)

  • 问题内容: 我有一个整数 在声明中,我必须将其与一些字符串进行比较。我不能在开始时设置为字符串,因为必须在循环中将其递减。 如何转换? 问题答案: 我找到了答案。 将整数转换为字符串: 将字串转换为整数:

  • 问题内容: 我有一个来自MySQL查询的元组,像这样: 我想将所有字符串元素转换为整数,然后将它们放回列表列表中: 我试图用它来实现它,eval但是还没有得到任何体面的结果。 问题答案: 是Python标准的内置函数,用于将字符串转换为整数值。你可以使用包含数字作为参数的字符串来调用它,然后返回转换为整数的数字: 上面的照片2。 如果你知道列表T1的结构(它仅包含列表,仅一个级别),则可以在Pyt

  • 问题内容: 我正在从在Varchar中具有原始提要的表中导入数据,我需要将varchar中的列导入到字符串列中。我尝试使用以及,但是却遇到了错误,因为有一些空字段,我需要将它们作为空或null检索到新表中。 请让我知道是否有相同的功能。 问题答案: 大胆猜测:如果您的值是一个空字符串,则可以使用NULLIF将其替换为NULL: