哪位前辈帮忙看看这段代码和答案有什么区别?
def greet(b='world'):
a = 'Hello,'
return a + b +'.'
print greet()
print greet('Bart')
其实一直搞不懂return 的作用,这节课和汉诺塔那节课的答案里面给的函数都没有写return,不太懂,还请哪位前辈帮忙看看。
def greet(b='world'):
a = 'Hello,'
return a + b +'.'
print greet()
print greet('Bart')
其实一直搞不懂return 的作用,这节课和汉诺塔那节课的答案里面给的函数都没有写return,不太懂,还请哪位前辈帮忙看看。
2019-06-26
你的代码是正确的,和答案的区别在于 'Hello,' 这个字符串逗号后面没有空格
return的作用在于调用该函数以后生成一个返回值,这个返回值可以代入其它主调函数里使用。
以你定义的greet(b) 函数为例,该函数返回了一个字符串(姑且记为string),当你在print函数中调用这个函数时,该函数给出返回值string
也就是说:
print greet()
相当于
string = greet() print string
如果一个函数完成操作后不需要返回值(函数体外部无需调用该函数返回的结果),那就不用写return。如该题的答案:
def greet(name='world'): print 'Hello, ' + name + '.' greet() greet('Bart')
调用函数时已经执行了打印操作,完成了任务,所以不必将字符串返回
举报