Haw*_*ate 2 python if-statement return function
我在下面添加了一个示例代码,以便为我的问题提供一个参考框架。我总是看到带有if语句返回True或False的程序,但是这里实际上发生了什么,为什么您不只是想为false / true放置一条打印语句。我在这里迷路了。
def false(x,y):
x > y
return False
false(9,10)
Run Code Online (Sandbox Code Playgroud)
因为在大多数情况下,除了打印结果外,您还希望对结果做些其他事情。通过使用返回值,该函数可以做一件事:进行计算,调用者可以用它做它想做的任何事情:将其打印,写到数据库中,用作更大的计算的一部分。这个想法称为可组合性。
另外,您的示例目前意义不大,因为它始终会False在评估后返回,x > y但对结果不执行任何操作。也许您的意思是:
def is_greater(x, y):
if x > y:
return True
else:
return False
Run Code Online (Sandbox Code Playgroud)
然后便is_greater可以轻松地在所需的任何上下文中使用它们。您可以这样做:
x = is_greater(a, b)
write_to_super_secret_database(x)
Run Code Online (Sandbox Code Playgroud)
(在现实生活中,您可能不会使用函数来做如此琐碎的事情,但希望该示例有意义。)
返回True / False的函数在诸如IF的其他语句中使用:
像这样:
def is_bigger(x,y):
return x > y
if is_bigger(10,9):
do_something
elif:
print "math don't work anymore"
Run Code Online (Sandbox Code Playgroud)
您应该看一下变量和控制结构:http : //www.tutorialspoint.com/python/python_if_else.htm