当前位置: > python教程 > python基础教程 >

python中return的理解和用法
栏目分类:python基础教程   发布日期:2019年07月08日 15:13:04   浏览次数:

在python中,函数可以通过return来返回函数值,返回值就是函数执行以后要返回的结果

函数的定义,语法:
def 函数名(参数): 
    代码块
    return

案例:求和

def sum(a,b):
    result = a+b     # 定义一个变量,来保存结果

    return result    #这里是返回求和的值

sum1=sum(123,456)    #这里是把函数的值赋值给一个变量

print(sum1)          #在这里我们才显示,看一下二个数的值是多少

说明: return 后边跟什么值,函数就会返回什么值,return 后边可以跟任意的对象,返回值甚至可以是一个函数

1、返回一个字符串

def fn():
     return 'Hello'

r = fn() # 这个函数的执行结果就是它的返回值
print(r)


2、返回一个列表

def fn():

     return [1,2,3]
r = fn() # 这个函数的执行结果就是它的返回值
print(r)

3、返回一个字典


def fn():     

     return {'a':1,'b':2}

r = fn() # 这个函数的执行结果就是它的返回值 print(r)

 

4、返回一个函数,但是下面的部函数fn2没有调用,函数的调用是 函数名+小括号 函数名()


def fn():    
    def fn2():        
          print('hello')

    return fn2  # 返回值也可以是一个函数

r = fn() # 这个函数的执行结果就是它的返回值,这里直接返回的是fn2函数的对象

print(r) #执行结果:<function fn.<locals>.fn2 at 0x011AE1E0>

注意:内部的嵌套函数fn2依然没有调用,没有执行

5、内部的嵌套函数怎么执行呢?

下面你一定要弄明白,很重要 第一种方法:

def fn():
    def fn2():
        print('hello')

    return fn2  # 返回值也可以是一个函数

r = fn()() #二个括号,就会调用内部的函数
print(r)   #看一下,为什么是会none ,因为return fn2是函数fn()函数的返回值,fn2并没有返回值,只有打印

执行结果:
hello
None 上面的结果你能看懂么?要仔细看注释 嵌套函数print修改成return

	
def fn():
    def fn2():
        return('hello')

    return fn2  # 返回值也可以是一个函数,反馈的是fn2的地址

r = fn()() #二个括号,就会调用内部的函数
print(r)   

结果:
hello


第二种方法执行内部函数:

r = fn() #调用外层函数fn,获得内部函数的地址 也就是恒等于fn2,把一个

print(r())  #这里加括号,就表示内层函数的调用,相当于fn()()

 

相关热词:

热门关键词
python字符串
     
python教程 python爬虫 python人工智能 Python+大数据 python问答