如何打印布尔返回值

时间:2016-04-13 23:45:01

标签: python

以下两个函数产生类似的结果

def is_between(x, y ,z):
    return x <= y <= z
is_between(1, 2, 3)

def is_between(x, y, z):
    if x <= y <= z:
        print(True)
        return True
    else:
        print(False)
        return False
is_between(1, 2, 3)

第一个函数比第二个函数更有效地返回一个布尔值。另一方面,第二个函数使用条件来描述它将如何返回true以及何时返回false,从而为我们提供了打印这些可能性的机会,如果它们发生的话。

是否可以打印或以其他方式使用第一个函数返回的布尔值?我试过print(is_between),但这是不正确的。

解决方案:

这可行

def is_between(x, y ,z):
    return x <= y <= z
print(is_between(1,2,3))

这不是

def is_between(x, y ,z):
    return x <= y <= z
is_between(1,2,3)
print(is_between)

4 个答案:

答案 0 :(得分:0)

尝试print(is_between(1, 2, 3))

可以 print(is_between),但你会得到类似<function is_between at 0x7fde2aebee18>的内容。那是因为你没有调用这个函数。您需要将参数传递给函数以获得结果。

您可以直接打印结果,如上所述,或使用结果 - 将其分配给变量(例如returned_value = is_between(1,2,3)),在条件(if is_between(1,2,3): ...)中使用它,等

答案 1 :(得分:0)

这是打印函数返回值的最佳解决方案

def is_between(x,y,z):     返回x&lt; = y&lt; = z print is_between(1,2,3)

这是一个链接:https://www.tutorialspoint.com/execute_python_online.php

答案 2 :(得分:0)

打印从函数返回的布尔值的一种简单方法是使用',而不是与'+'连接。 示例:

    def bird_available(name_of_bird):
       bird_types = 'crow robin parrot seagle sandpiper hawk pigeon'
       Case = name_of_bird.lower() in bird_types
    return Case

    name_of_bird = input('enter a type of bird to search: ')   
    birds = bird_available(name_of_bird)
    print('the bird '+name_of_bird+'is ' ,birds)

您还可以使用',而不是将其设置为变量来打印bird_available(name_of_bird)

答案 3 :(得分:-1)

简单地使用:

if is_between(1, 2, 3):
    # Do somthing

简单打印:

print(is_between(1, 2, 3))

代码中的问题是您正在尝试打印函数而不是其返回值。