編寫一個接受兩個參數a和b的函數冪,並計算一個上升的冪b。 示例: power(2,3)= 8 用消息引發TypeError如果輸入是其他輸入或浮點數,則參數必須是整數或浮點數。 注意:不要使用**不帶「*」計算指數的遞歸函數
我的代碼下面沒有給我我想要的輸出。請問有什麼可能是錯的?
def power(a, b):
if a == type(int) or a == type(float) and b == type(int) or b == type(float):
def add(a, b):
num = a
for i in range(b):
num += 1
return num
def multiply(a, b):
num = 0
for i in range(b):
num = add(num, a)
return num
def power(a, b):
num = 1
for i in range(b):
num = multiply(num, a)
return num
else:
return "Argument must be integer or float"
所以你不能使用'*'或'**'? – Carcigenicate
如果輸出錯誤,則需要對其進行調試。你定義了3個內部函數。哪個返回的結果不好? – Carcigenicate
它沒有通過if函數運行的條件 – wapadunk