我有这个小函数需要两个整数a
和b
并检查是否a
是b
上升到某个指数。这是代码。为什么不python返回布尔值
def is_power(a,b):
if not a%b==0:
return a%b==0
elif a/b==1:
return a/b==1
else:
a = a/b
is_power(a,b)
print is_power(,)
问题是无论我输入什么,总是返回None
。
但是,如果我用印刷品替换所有退货,那么它们会给出正确的结果,即True
或False
。
def is_power(a,b):
if not a%b==0:
print a%b==0
elif a/b==1:
print a/b==1
else:
a = a/b
is_power(a,b)
is_power(,)
为什么会发生这种情况?这可能是一个noob问题,但我仍然无法想象出来。 感谢
你是否在函数的最后一行缺少'return'? – bbayles
是的,他错过了一个return语句。另外,你是否在没有参数的情况下调用函数,或者是Harry Houdini的参数亲属? –
@JohnDoe:没有功能不是没有参数。我根本没有在那里放任何价值。 – Mishrito