📜  将 float 转换为 int python (1)

📅  最后修改于: 2023-12-03 15:25:13.681000             🧑  作者: Mango

将 Float 转换为 Int Python

在 Python 中,可以使用内置函数 int() 来将 float(浮点数)类型转换为 int(整数)类型。该函数将返回向下取整后的整数值。

以下代码示例演示了如何将 float 转换为 int

# Float 转换为 Int
num_float = 3.14
num_int = int(num_float)

# 输出结果
print("Float value:", num_float)
print("Integer value:", num_int)

输出结果:

Float value: 3.14
Integer value: 3

在上面的代码中,我们首先定义了一个 float 类型的变量 num_float,其值为 3.14。然后,我们使用 int() 函数将 num_float 转换为 int 类型,并将结果存储在 num_int 变量中。最后,我们输出了原始值和转换后的整数值。

值得注意的是,由于 int() 函数会执行向下取整操作,因此将较大的浮点数类型转换为 int 类型时,可能会失去一些精度。此外,如果浮点数的值为 NaN(非数字)或 inf(无穷大),在转换为 int 时会引发 ValueError 异常。

以下是更多示例代码,演示了如何处理这些情况。

# Float 转换为 Int,处理 NaN 和 inf
nan_float = float('nan')
inf_float = float('inf')

try:
    nan_int = int(nan_float)
except ValueError:
    print("Error: Cannot convert NaN to int")

try:
    inf_int = int(inf_float)
except ValueError:
    print("Error: Cannot convert inf to int")

# 输出结果
print("Float value:", nan_float, "Integer value:", nan_int)
print("Float value:", inf_float, "Integer value:", inf_int)

输出结果:

Error: Cannot convert NaN to int
Error: Cannot convert inf to int
Float value: nan Integer value: 0
Float value: inf Integer value: 2147483647

在上面的代码中,我们使用 float() 函数创建了一个 NaNinf 的浮点数变量 nan_floatinf_float。然后,我们使用 try-except 语句来处理无法转换为整数值的情况,并且输出结果。

总之,我们可以看到,在 Python 中将 float 转换为 int 非常简单,只需使用 int() 函数即可。但是,我们需要注意无法转换的情况,并且需要处理精度丢失的问题。