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

不太理解return,它返回的是一个值还是什么?

#coding=utf-8
def square_of_sum(L):
    for i in L:
        print i*i
print square_of_sum([1, 2, 3, 4, 5])
print square_of_sum([-5, 0, 5, 15, 25])
这里我打印后总会有个none在里面,能不打印出来吗?
帮忙解释一下return的作用是什么,返回的是什么?

正在回答

2 回答

①通俗一点说是这样的啦。函数这种必须要有return的,执行完函数就要返回(return)一个值,你可以理解为执行了要有结果。如果你没有写,那系统默认是return None。你之所以会有None的出现时因为你的square_of_sum(L)函数没有写return,所以在执行完for循环语句输出(print)每一个L里的数的平方值后这个函数就到了返回(return),因为你没有写return,所以默认返回None。详细请查看7-3的教程。

②你这样写函数是错的,你应该把函数返回的值用return语句表达出来,而不是print出来。像这样:

def square_of_sum(L):

    sum = 0

    for x in L:

        sum = sum + x * x

    return sum   #执行函数后返回sum的值

print square_of_sum([1, 2, 3, 4, 5])  #调用函数,实参传给形参执行后就执行return sum也就是返回sum的值

print square_of_sum([-5, 0, 5, 15, 25])


祝学习愉快哟~


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

慕粉0131551080 提问者

谢答疑
2017-01-11 回复 有任何疑惑可以回复我~
#2

汉堡要努力

return 返回值的话 是返回到哪里啊?
2019-04-17 回复 有任何疑惑可以回复我~

print 是输出语句,return 是返回值,比如 return print i*i

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

举报

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

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

进入课程

不太理解return,它返回的是一个值还是什么?

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