如何在python的if语句中调用具有返回值的函数

时间:2019-07-01 10:57:28

标签: python

我有两个函数,其中一个包含return语句。我的议程是当第一个函数在if条件下执行时,编译器将引发语法错误。

这是我的剧本。

def hi():
  return 10,20

def hello(a):
  if a:
    print "asd"

if a,b=hi() : hello(a)

在if条件下,该错误将引发“ =”。 如何解决这个问题。还是有其他选择可以在一根衬管中执行此操作?

2 个答案:

答案 0 :(得分:2)

您需要创建a和b的元组,然后可以使用==

进行比较

使用此

if (a,b)==hi() : hello(a)

以下是显示asd

的完整代码
def hi():
  return 10,20

def hello(a):
  if a:
    print "asd"

a,b = 10,20

if (a,b)==hi() : hello(a)

答案 1 :(得分:0)

if语句中不能有任意表达式,只能使用布尔值(可以解释为true / false的值)。

所以你需要做这样的事情

def hi():
  return 10,20

def hello(a):
  if a:
    print "asd"

a, b = hi() 
if a:
    hello(a)