我们知道函数内部可以嵌套另外一个函数,这叫做嵌套函数。但是我们是不可以直接在函数外部调用内部函数的。
import pandas as pd
import numpy as np
def fun1(k1):
def fun2(k2):
print('我是'+k2+'函数')
fun2(k1)
# 嵌套调用,正确
fun1('内部')
#直接调用内部函数,报错
fun2('内部')
以上的结论似乎显而易见哈,但是我们需要思考的是,我们如何才能直接进行内部函数的调用呢?我们可以巧妙的转化一下:
import pandas as pd
import numpy as np
def fun1(k1):
def fun2(k2):
print('我是'+k2+'函数')
return fun2#加了return就返回函数对象
fun=fun1(1)#将返回的对象赋给一个变量,就可以了
fun('内部')