功能:
return语句就是将结果返回到调用的地方,并把程序的控制权一起返回
程序运行到所遇到的第一个return即返回(退出def块),不会在运行第二个return
新增内容:
return语句有两种功能,一是stop;另外一个是返回值。任何情况下,return均有stop的成分,而只有在 return后面指定字符串时,才会返回值。
- 遇到return时,将结果返回给原函数,并将程序的控制权一并交回
def fun(a, b):
if a > b:
print(a)
return a
print(a)
fun(4, 3)
************************
4
在脚本模式下fun(4, 3)输出时,需要print(fun(4, 3)),此时如果仅有fun(4,3)函数不会输出结果;
而print(a)可以输出。在所写代码中,print(a)有两次而中间含有return a,说明函数的控制权已经返回,函数运行已然停止。
- return是函数返回的结果,可以是字符串、元组、列表
```python
def printme(a):
return a
自符串
printme(‘c’) print(type(printme(‘c’)))元组
printme((1,3)) print(type(printme((1, 3))))列表
printme([1, 3, 4]) print(type(printme([1, 3, 4])))
结果
2. 函数中含有return语句时,返回值有类型,否则返回值为Nonetype。
```python
def printme(a):
print(a)
print(type(print(a)))
printme('c')
#结果
c
c
<class 'NoneType'>
- 疑问点:
在无return时,使用print函数打印类型时,会再次出现值与类型
- 关于
类型 ```python a = None b = 1 print(type(a)) print(type(b))
结果
3. 使用return语句有返回值,但是不打印。打印需print()语句。
```python
python 脚本模式
def fun(a, b):
if a > b:
return a
else:
return b
fun(3, 4)
print(fun(3, 4))
#结果
4
python 交互模式
>>> def f(x, y):
if x > y:
return x
>>> f(2 , 1)
2 #交互模式下,直接打印