gulaguala 发表于 2024-10-12 13:32:03

int()函数

x=input("输入数字:")
输入数字:9.99
print(int(x))
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
    print(int(x))
ValueError: invalid literal for int() with base 10: '9.99'

这样为啥不行啊

wp231957 发表于 2024-10-12 13:39:45

int只能是看起来是整数的字符串或者是浮点转整型
看起来像浮点的字符串要用FLOAT转换

FishC 发表于 2024-10-12 13:44:32

`int()` 函数用于将字符串或数字转换为整数。然而,它不能直接将包含小数点的字符串(如 '9.99')转换为整数,因为整数不包含小数部分。

要解决这个问题,你可以先将字符串转换为浮点数,然后再转换为整数。代码示例如下:

x = input("输入数字:")
x_float = float(x)# 先转换为浮点数
x_int = int(x_float)# 再转换为整数
print(x_int)

这种方法会直接舍弃小数部分(不进行四舍五入)。比如,输入 '9.99' 会输出 '9'。如果需要四舍五入,可以使用 `round()` 函数。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

小甲鱼的二师兄 发表于 2024-10-12 17:57:19

要么 int("9"),要么 int(9.99),但不能 int("9.99")
页: [1]
查看完整版本: int()函数