[英]How to calculate power of?
def is_power_of(number, base):
# Base case: when number is smaller than base.
if number < base:
# If number is equal to 1, it's a power (base**0).
return True
# Recursive case: keep dividing number by base.
return is_power_of(number/base , base)
print(is_power_of(8,2)) # Should be True
print(is_power_of(64,4)) # Should be True
print(is_power_of(70,10)) # Should be False
我唯一改變的是True
和number/base, base
。 我不知道如何使True
對於除.=1 之外的所有情況都是正確的。
由於歸結為number == 1
與否,您可以直接返回該bool
:
def is_power_of(number, base):
# Base case: when number is smaller than base.
if number < base:
# If number is equal to 1, it's a power (base**0).
return number == 1
# Recursive case: keep dividing number by base.
return is_power_of(number/base , base)
您的測試的輸出是:
True
True
False
這是預期的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.