使用布尔值比使用带有 'if' 语句的 int 有好处吗

Is there a benefit to using a boolean over say, an int with an 'if' statement

作为一名初学者,我编写了一个程序,大致如下:

ArbitraryVariable = 1
--Code--
--Code--
--Code--
If ArbitraryVariable == 1:
    --Code--
    --Code--
    --Code--

如果我想让它做那件事,我会将 ArbitraryVariable 设置为 1,如果我不希望它做其他任何事情(通常为 0),我想这实现了事实上的 true/false 逻辑。

我的朋友实际上知道他在做什么,他告诉我如果使用布尔值会更好,因为它是 true/false,这是有道理的,但我很好奇这样做是否真的有任何特定的好处这个,除了在优化上有非常小的增加,它似乎只是布尔值的 'thing'?

我用 python 写了这篇文章,但欢迎跨语言回答。

这是一个很好的问题。

布尔值用于只需要 true/false 数据类型的值。老实说,它之所以被使用主要是因为大多数程序员使用的编码标准。正如您所提到的,与使用整数表示真或假相比,性能略有提高。

它还提供了更易于阅读和理解的优点,如果您使用布尔值,则不需要 python 中的运算符。你可以这样做;

Boolean = True

if Boolean:
  print("True")

如果它是假的,你可以使用;

Boolean = False

if not Boolean:
  print("False")

总体而言,您使用的应该取决于 if 语句的作用。如果问题类似于“灯亮了吗?” true 和 false 将是一个合适的答案。无论如何,这就是我在我的经验中发现的。