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

(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('')
printme('') 执行结果: 12345
1234567 ================================================================ 无return: def printme( str ):
"打印任何传入的字符串"
print(str) #----------------------------------- def printm( str ):
"打印任何传入的字符串"
print(str) if __name__ == "__main__": printme('')
printme('') 执行结果: 12345
1234567 ================================================================ 都有return: def printme( str ):
"打印任何传入的字符串"
print(str)
return #----------------------------------- def printm( str ):
"打印任何传入的字符串"
print(str)
return print(printme(''))
print(printm('')) 执行结果: 12
None
12345
None ================================================================= 没有return: def printme( str ):
"打印任何传入的字符串"
print(str) #----------------------------------- def printm( str ):
"打印任何传入的字符串"
print(str) print(printme(''))
print(printm('')) 执行结果: 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 子句会先被执行然后再真正离开该函数。

return语句的更多相关文章

  1. 高程(3):操作符、for、for...in循环、break/continue/return语句、函数等

    1.关系操作符 注意点:1)比较操作数是两个字符串,是比较字符串的字符编码值. 如:"a" > "b"  返回 false:"a" & ...

  2. 【转】Java中try catch finally语句中含有return语句的执行情况(总结版)

    Java中try catch finally语句中含有return语句的执行情况(总结版) 有一点可以肯定,finally块中的内容会先于try中的return语句执行,如果finall语句块中也有r ...

  3. 0016 Java学习笔记-异常-如果try-catch-finally中都存在return语句会怎样?

    上午在搜索"System.runFinalization"的时候,搜到 http://www.cnblogs.com/Skyar/p/5962253.html ,其中有关于try- ...

  4. javascript简单的认识下return语句+2015的总结+2016的展望

    好久没更新博客了...自从有了mac之后世界变得简单了...日常么,除了研究代码,看别人的代码,写自己的代码.就那样.... 吐槽点:window配个nodejs的环境花了九头牛两只老虎的力气,mac ...

  5. 有return语句情况下,try-catch-finally的执行顺序

    重要结论: 1.不管有没有出现异常,finally块中代码都会执行 2.当try和catch中有return时,finally仍然会执行 3.finally是在return后面的表达式运算后执行的(此 ...

  6. try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,还是在return之后执行?

    这是一个很有趣的问题,我测试的结果是:是在return中间执行. 我在网上搜寻了一些资料,下面是参考代码: /** * */ package com.b510.test; /** * try {}里有 ...

  7. java finally中含return语句

    <java核心技术卷一>中提到过:当finally子句包含return 语句时(当然在设计原则上是不允许在finally块中抛出异常或者 执行return语句的,我不明白为何java的设计 ...

  8. Java异常处理中finally中的return会覆盖catch语句中的return语句

    Java异常处理中finally中的return会覆盖catch语句中的return语句和throw语句,所以Java不建议在finally中使用return语句 此外 finally中的throw语 ...

  9. javascript-函数的参数和return语句

    × 目录 [1]参数 [2]Arguments对象 [3]函数重载 [4]return 语句 ------------------------------------- 一.参数(最多25个) 可以动 ...

  10. 返回类型和return语句

    return语句终止当前正在执行的函数并将控制权返回到调用该函数的地方.return语句有两种形式: return; return expression; 无返回值函数 没有返回值的return语句只 ...

随机推荐

  1. MVC-MVP-MVVM框架模式分析

    MVC(Model-View-Controller) MVC 架构模式图(经典版) 注:实际上,Model和View永远不能相互通信,只能通过Controller传递:上图只是MVC模式的经典图. M ...

  2. Spring框架几种创建bean的方式

    Spring框架下,Bean的创建和装配非常的灵活,提供了三种主要的方式,并且相互见可以互相看见,也就是你可以随意地采用你喜欢且合适的方式创建Bean,而不用担心他们之间的兼容问题. 一.使用XML显 ...

  3. jQuery $.ajax传递数组的traditional参数传递必须true 对象的序列化

    数组类型参数传递: 若一个请求中包含多个值,如:(test.action?tid=1&tid=2&tid=3),参数都是同一个,只是指定多个值,这样请求时后台会发生解析错误,应先使用 ...

  4. Solaris 11中配置基于link的IPMP

    http://blog.itpub.net/29960937/viewspace-1347901/ Tips: Record and feedback errors you have encounte ...

  5. 基本运算符与if while详解:

    ''' 基本运算符与if while详解: ''' # 算术运算符 # + - * / % // ** # 返回一个数值 # 比较运算符 # > >= < <= == != # ...

  6. python设置图片背景和设置字体颜色大小

    # -*- coding: utf-8 -*- """ Created on Wed Dec 11 22:37:30 2019 @author: Dell "& ...

  7. SP Flash Tool版本对应MTK处理器型号(SP Flash Tool 版本速查)

    SP Flash Tool v3.1224.0.100 MT6516,MT6573,MT6573,MT6575,MT6575,MT6577, SP Flash Tool v3.1332.0.187 M ...

  8. mysql<七>

    -- ########## 01.集合逻辑 ########## -- MySQL中,只实现了一种集合逻辑:逻辑与,有两种用法:UNION 和 UNION ALL -- 临时表1 CREATE TAB ...

  9. 选择vim编辑器的7个理由

    当我刚刚开始用 vi 文本编辑器的时候,我讨厌它!我认为这是有史以来设计上最痛苦和反人类的编辑器.但我还是决定我必须学会它,因为如果你使用的是 Unix,vi 无处不在并且是唯一一个保证你可以使用的编 ...

  10. 基于STM32的CRC校验说明

    ///***************************************************************************** //下面是test.c里面的函数 // ...