我通常这样将字符串转换为整数:
my_input = int(my_input)
但我在想是否有一种更不拙劣的方式,因为它感觉有点冗长。
我通常这样将字符串转换为整数:
my_input = int(my_input)
但我在想是否有一种更不拙劣的方式,因为它感觉有点冗长。
my_number = my_input.to_int
。但目前还没有原生支持这种方法。有趣的是,如果你想从类似浮点数的字符串中提取整数部分,你必须先将其转换为float
,然后再转换为int
。否则你会得到一个ValueError: invalid literal for int()
错误。
更加稳健的方法:
my_input = int(float(my_input))
For example:
>>> nb = "88.8"
>>> int(nb)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '88.8'
>>> int(float(nb))
88
try
来捕获异常:user_input = '88.8'
try:
user_input = int(float(user_input))
except:
user_input = 0
print(user_input)
i = int
或者其他什么?但我们必须使用某种代码(调用函数是最简短的方式),并且我们必须将值赋回去(因为字符串是不可变的)。 - Karl Knechtel