繁体   English   中英

值不从 python 函数返回

[英]Value not returning from python function

我有一个变量“ x ”分配给一个函数(“ rundown ”)。 在该函数内部,两个变量“ y,z ”减少了一个随机值。 然后条件语句检查 y 和 z 是否仍然大于 0 - 如果是,则函数再次使用新值运行,重复直到一个变量达到 0。

一旦这些变量中的一个达到 0 或更少,该函数应该根据yz首先达到 0 来返回一个值。 x应该被分配该值,因此主函数中的条件可以基于 rundown 函数的结果。 但这部分似乎不起作用。

我尝试将打印语句添加到条件中只是为了查看它们是否触发,并且确实如此。 但是当我向x添加一个打印语句时,它只打印“none”,所以我知道这就是我的代码中断的地方。 我只是不知道为什么......这是我正在使用的jist:

def main():
  x = rundown(y,z)
  if x == 0:
    #(do something)
  elif x == 1:
    #(do something else)


def rundown(y,z):
  y -= (1 + random.random())
  z -= (1 + random.random())
  if y <= 0:
    return(0)
  elif z <= 0:
    return(1)
  else:
    rundown(y,z)

不是 else 下的纲要将在函数中返回一个值,但是您没有像在 main.js 中那样将它分配给任何东西。 也许做

返回(破败(y,z))

在 else 语句中忘记返回return rundown(y,z)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM