用于显示方法的返回值在python中成功或失败

Dav*_*ave 0 python boolean python-2.7

在python中显示操作失败的正确方法是什么.在这段代码中,返回值应该是什么?

def compare(y,x):
     if y ==  x:
         return 'true'
     return 'false'
Run Code Online (Sandbox Code Playgroud)

Blc*_*ght 5

Python有文字值TrueFalse您可以使用.但是,很少需要明确地使用它们,因为在大多数情况下,比较操作将返回一个或另一个值.例如,您可以重做您的函数:

def compare(y, x):
    return y == x
Run Code Online (Sandbox Code Playgroud)

值得注意的是,如果需要,可以将非布尔值视为"真"或"假".该"falsy"值None,0并且所有的空容器(比如空字符串'',空列表[],空的元组(),空字典{}等).默认情况下,其他所有内容都是"真实的",包括大多数对象的所有实例.

自定义类可以通过实现魔法方法__nonzero__(__bool__在Python 3中重命名)来定义布尔转换.如果它不存在,Python将检查__len__,如果不存在则放弃并假设所有实例都为真.