改变布尔输出

2024-04-18 20:37:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图改变布尔值的输出。在

例如,如果我有类似的东西:

3 == 3

我不希望它返回True,而是返回我指定的内容,如Correct

我该怎么做?在

谢谢


Tags: true内容correct
3条回答

要做的shorties way是:

"Correct" if 3 == 3 else "Incorrect"

没有好方法可以更改print(True)输出的行为。在

x = float(input("enter a Number between 1 - 5: "))

Correct = False

while (not Correct):

    if x == 3:
        Correct = True
        print("Correct")

    else:
        print("sorry guess again!")
        x = float(input("enter a Number between 1 - 5: "))
def equivalence(a,b):

    if(a==b):
       print("Correct")
    else:
       print("Incorrect")

然后你可以调用这个函数。在

^{pr2}$

如果您真的想更改==实际上是做的,那么必须重写操作符类__eq__。但是如果你刚开始编程,这很快就会变得失控。在

编辑以解决操作员的评论:

我写的任何东西都可以替代。你可以做一些简单的事情:

if(2+3<5-7):
   print("Correct")
else:
   print("Incorrect")

一般格式为:

if(condition):
   #What to do if condition is true.
else:
   #What to do if condition is false.

你甚至不需要一个函数来做这个。你可以像我上面所做的那样单独使用if语句。在

第二次编辑:

好吧,现在我知道你想要什么了。这是你能做的。这可能有点复杂,但请听我的。在

创建一个这样的函数。只要你想叫什么名字都行:

def booleanizer(condition):
   if(condition):
      print("Correct")
      return True
   else:
      print("Incorrect")
      return False

现在,只要有一个条件语句要打印“correct”或“incorrect”,只需将条件语句包装在booleanizer中,如下所示:

假设你有2+3<5-7,你想“布尔化”它。在

booleanizer(2+3<5-7) #this prints "Incorrect"

或者你可以把这个应用到任何有条件的

booleanizer("This"=="This") #Prints "Correct"
booleanizer(7<5) #Prints "Incorrect"

等等。。。在

相关问题 更多 >