python关于return的一个小问题
答案:3 悬赏:0 手机版
解决时间 2021-03-25 21:00
- 提问者网友:心牵心
- 2021-03-24 21:29
python关于return的一个小问题
最佳答案
- 五星知识达人网友:独钓一江月
- 2021-03-24 22:09
因为他都是return None,而函数如果没定义回复,得到的也是None,所以对你这段代码 2个return None是没有影响的
但是,用了return None,你代码写成这样也可 (可以不用到else):
def sqrt(x):
ans=0
if x>=0:
while ans*ans if ans*ans!=x:
print x,'is not a perfect number'
return None
return ans
print x,'is a negative number'
return None
但是,用了return None,你代码写成这样也可 (可以不用到else):
def sqrt(x):
ans=0
if x>=0:
while ans*ans
print x,'is not a perfect number'
return None
return ans
print x,'is a negative number'
return None
全部回答
- 1楼网友:往事隔山水
- 2021-03-24 23:24
这不是有3个return么?
怎么会没有影响呢
最后的return 针对负数的情况
这个函数是要找完全平方数的平方根,只有完全平方数才返回其平方根
第一个return是针对不是完全平方数的情形, 返回none, 不作处理追问不好意思,是三个。
但是,我把第一个和第三个删除,运行完,没有差别啊。追答是指运行结果不受影响么?
比如输入的x值为8, 能够输出,'8 is not a perfect number'
怎么会没有影响呢
最后的return 针对负数的情况
这个函数是要找完全平方数的平方根,只有完全平方数才返回其平方根
第一个return是针对不是完全平方数的情形, 返回none, 不作处理追问不好意思,是三个。
但是,我把第一个和第三个删除,运行完,没有差别啊。追答是指运行结果不受影响么?
比如输入的x值为8, 能够输出,'8 is not a perfect number'
- 2楼网友:深街酒徒
- 2021-03-24 22:21
函数里是否需要return ,主要还得看调用这个函数的时候,是否需要它执行的结果。比如:
def xxx():
.....
ret = sqrt(9)
if ret:
...
else:
....
这样的话,sqrt返回结果就是有用的,那就必须要return。
如果你根本不关心它的执行结果,比如:
def xxx():
......
sqrt(9)
那么,是否return都无所谓了
def xxx():
.....
ret = sqrt(9)
if ret:
...
else:
....
这样的话,sqrt返回结果就是有用的,那就必须要return。
如果你根本不关心它的执行结果,比如:
def xxx():
......
sqrt(9)
那么,是否return都无所谓了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯