return语句

定义一个函数:可以定义一个由自己想要功能的函数,以下是简单的规则:

(1)、函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。

(2)、任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。

(3)、函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

(4)、函数内容以冒号起始,并且缩进。

(5)、return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None



语法:

def functionname( parameters ):

   "函数_文档字符串"

   function_suite

   return [expression]


PS:默认情况下,参数值和参数名称是按函数声明中定义的顺序匹配起来的。


函数调用:

定义一个函数只给了函数一个名称,指定了函数里包含的参数,和代码块结构。

这个函数的基本结构完成以后,你可以通过另一个函数调用执行,也可以直接从Python提示符执行。



有return:

def printme( str ):
   "打印任何传入的字符串"
   print(str)
   return

#-----------------------------------

def printm( str ):
   "打印任何传入的字符串"
   print(str)
   return

if __name__ == "__main__":

  printme('12345')
  printme('1234567')


执行结果:


12345
1234567

================================================================


无return:


def printme( str ):
   "打印任何传入的字符串"
   print(str)


#-----------------------------------

def printm( str ):
   "打印任何传入的字符串"
   print(str)


if __name__ == "__main__":

  printme('12345')
  printme('1234567')



执行结果:



12345
1234567




================================================================



都有return:

def printme( str ):
   "打印任何传入的字符串"
   print(str)
   return 

#-----------------------------------

def printm( str ):
   "打印任何传入的字符串"
   print(str)
   return


print(printme('12'))
print(printm('12345'))



执行结果:


12
None
12345
None

=================================================================

没有return:


def printme( str ):
   "打印任何传入的字符串"
   print(str)


#-----------------------------------

def printm( str ):
   "打印任何传入的字符串"
   print(str)



print(printme('12'))
print(printm('12345'))



执行结果:


12
None
12345
None

=================================================================


python中print函数需要返回值,如果你在print函数中所放的函数没有返回值,那么print将会return None

请注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。

因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。

如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。return None可以简写为return




在Python中return函数返回值return,函数中一定要有return返回值才是完整的函数,如果你没有定义Python函数返回值,


那么得到的结果是None对象。




return 在语法上只会出现于函数定义所嵌套的代码,不会出现于类定义所嵌套的代码。

如果提供了表达式列表,它将被求值,否则以 None 替代。

return 会离开当前函数调用,并以表达式列表 (或 None) 作为返回值。

当 return 将控制流传出一个带有 finally 子句的 try 语句时,该 finally 子句会先被执行然后再真正离开该函数。
posted @ 2019-12-19 16:47  小白龙白龙马  阅读(1086)  评论(0编辑  收藏  举报