以下两个函数产生类似的结果
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)
答案 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))
代码中的问题是您正在尝试打印函数而不是其返回值。