在 Python 中将布尔值转换为整数

Muhammad Maisam Abbas 2023年1月30日 2022年5月17日
  1. 使用 Python 中的 if/else 块将布尔值转换为整数
  2. 使用 Python 中的 int() 函数将布尔值转换为整数
  3. 使用 Python 中的 map() 函数将布尔列表转换为整数
  4. 使用 Python 中的 int() 函数将 True/False 字符串转换为整数
在 Python 中将布尔值转换为整数

本教程将讨论在 Python 中将布尔值转换为整数。

使用 Python 中的 if/else 块将布尔值转换为整数

在 Python 中,布尔值 TrueFalse 分别对应于整数值 1 和 0。

我们可以编写一个用户定义的函数,如果传递给函数的值是 True,则返回 1,如果传递给函数的值是 False,则返回 0。

我们可以通过 if/else 块来做到这一点。下面的示例代码向我们展示了如何使用 if/else 语句将布尔值转换为 0 或 1。

def booltoint(value):
    if value == True:
        return 1
    else:
        return 0
x = booltoint(False)
print(x)

输出:

0

使用 Python 中的 int() 函数将布尔值转换为整数

int() 函数将布尔值作为输入并返回其等效整数值。我们可以使用 int() 大幅减少前面示例中的代码大小。

代码片段演示了在 Python 中使用 int() 函数将布尔值转换为 1 或 0。

x = int(True)
y = int(False)
print(x)
print(y)

输出:

1
0

我们使用 int() 函数将值 TrueFalse 分别转换为整数 1 和 0,并将整数值存储在变量 xy 中。我们在输出中显示了这些值。

使用 Python 中的 map() 函数将布尔列表转换为整数

前面的部分讨论了在 Python 中仅将单个布尔值转换为整数值的方法。现在,我们将了解如何使用 map() 函数将布尔值列表转换为等效的整数值。

map() 函数需要一个函数和一个参数列表作为输入参数。它将该函数应用于列表的每个元素并返回该函数的输出。

下面的代码向我们展示了如何使用 Python 中的 map() 函数将布尔值列表转换为整数列表。

boo = [True, False, False, True, True]
boo = list(map(int, boo))
print(boo)

输出:

[1, 0, 0, 1, 1]

我们通过使用 map() 函数内的 int() 函数将布尔值列表 boo 转换为整数值列表。我们将 map() 函数包含在 list() 函数中,以将返回的输出转换为列表。

最后,我们打印了新生成的整数列表。

使用 Python 中的 int() 函数将 True/False 字符串转换为整数

在前面的部分中,我们讨论了将布尔值转换为整数值的方法。本节将讨论我们必须将字符串值转换为 1 或 0 的场景。

我们可以利用前面几节中讨论的 int() 函数来处理这个问题。

让我们考虑一个将字符串 true 转换为 1 并将 false 转换为 0 的示例。从前面的讨论中我们知道 int() 函数将布尔参数转换为等效的整数值。

我们可以使用 == 运算符将此字符串转换为布尔值并将其传递给 int() 函数。

以下代码演示了整个过程的工作示例。

x = 'true'
x = int(x == 'true')
print(x)

输出:

1

我们首先将字符串变量 x 转换为布尔等效整数值 1,方法是首先将其转换为带有 x == 'true' 的布尔表达式,并将该布尔表达式传递给 int() 函数。

此方法将为除 true 之外的每个 x 值返回 False 布尔值或 0 整数值。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相关文章 - Python Integer

相关文章 - Python Boolean