亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么不加if就會報錯

# coding=utf-8

def sum1(n):

? ? return n+sum1(n-1)

print (sum(2))


正在回答

2 回答

def sums (n):

? ? refult = 0

? ? if n > 0 and n <= 100:

? ? ? ? while n > 0 :

? ? ? ? ? ? refult = refult + n

? ? ? ? ? ? n -= 1

? ? ? ? return refult

? ? else:

? ? ? ? return '參數要在1-100之間'

n1 = 99

print(sums(n1))


def fact(n):

? ? if n == 1:

? ? ? ? return 1

? ? elif n < 1:

? ? ? ? return '參數要在1-100之間'

? ? elif n <= 100:

? ? ? ? return n + fact(n-1)

? ? else: # n > 100 的情況

? ? ? ? return '參數要在1-100之間'

n2 = 99

print(fact(n2))


我也是剛學python,希望對你有參考作用,你可以像我這樣先做判斷,就不會報錯了

0 回復 有任何疑惑可以回復我~

因為沒有特殊處理 他還會一直執行下去 比如 sum1(-1)? ?sum1(-2) 無窮盡還怎么算呢

報的錯誤也是?RuntimeError: maximum recursion depth exceeded 超出最大遞歸深度..

0 回復 有任何疑惑可以回復我~
#1

young明

而且你的寫法應該是 print(sum1(2))才是對的
2021-03-24 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Python3 入門教程(新版)
  • 參與學習       162648    人
  • 解答問題       1121    個

python3入門教程,讓你快速入門并能編寫簡單的Python程序

進入課程

為什么不加if就會報錯

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號