我有這個小函數需要兩個整數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