为了账号安全,请及时绑定邮箱和手机立即绑定

有一个小问题~

def fact(n):
   if n==1:
       return 1
   return n * fact(n-1)

为什么不是

def fact(n):
   if n==1:
       return 1

  else:
   return n * fact(n-1)呢

正在回答

2 回答

这两段代码是一样的,只不过第二段你的缩进有一些问题

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

慕粉1450121606 提问者

恩恩 我在这里没有管缩进格式 只是想问为什么没有加else
2017-03-15 回复 有任何疑惑可以回复我~
#2

慕粉1450121606 提问者

可以不用加else吗?表示如果n不等于1则自动执行return n * fact(n-1)??
2017-03-15 回复 有任何疑惑可以回复我~
#3

慕粉3905087 回复 慕粉1450121606 提问者

if判断语句的使用方法中就有这种用法,如果条件成立,执行条件成立后满足的代码,如果不成立,跳过这个判断语句。继续执行程序
2017-03-15 回复 有任何疑惑可以回复我~
#4

慕粉1450121606 提问者 回复 慕粉3905087

明白啦 谢谢~
2017-03-16 回复 有任何疑惑可以回复我~
#5

慕粉1450121606 提问者

非常感谢!
2017-03-16 回复 有任何疑惑可以回复我~
查看3条回复

同意上面的说法,可以用else:语句,你空格不对,你eclipse运行后下面有报错提示,改正后可以运行,如下

def fact(n):

    if n==1:

       return 1

    else:

       return n * fact(n-1)

print(fact(4))


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

慕粉1450121606 提问者

我在这里没有管缩进格式 只是想问为什么没有加else
2017-03-15 回复 有任何疑惑可以回复我~
#2

慕粉1450121606 提问者

可以不用加else吗?表示如果n不等于1则自动执行return n * fact(n-1)??
2017-03-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

有一个小问题~

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信