当我多次运行此代码时,它会打印"无"有一段时间了为什么会发生这种情况
import random
def randomeven():
n=int(r.random()*100)
if n%2==0:
return n
else:
randomeven()
print(randomeven())
答案 0 :(得分:0)
您需要return randomeven()
否则您将从函数返回void / None。
所以,当第一个随机数不均匀时,你会得到None
。
randomeven()
|
---> (generates 15) calls itself, returns None
|
---> (generates 2) returns 2
|
<---- (2 is returned)
|
<------ (returns None)
我建议使用调试器来解决这类问题。