6.5 函数的嵌套(了解)

6.5 函数的嵌套(了解)

定义阶段检测语法不执行代码

6.5.1 函数嵌套

def f1():
    def f2():
        print('f2 func ')
    f2()#可以调用

# f2() #会报错
f1() #可以调用
f2 func 

6.5.2 函数嵌套的应用

#通过输入指令来输出圆的周长和面积
from cmath import pi

def circle(r,action):
    
    #周长
    if action=='p':
        def perimeter():
            return 2*pi*r
        res=perimeter()
        
     #面积
    elif action=='a':
        def area():
            return pi*r**2
        res=area()
    else: 
        res='error'
    #返回最终结果
    return res


r=int(input("r>>"))
choice=input('choice:a:area or p :perimeter>>')
res=circle(r,choice)
print(res)
r>> 2
choice:a:area or p :perimeter>> a
12.566370614359172
posted @ 2025-08-21 15:08  bokebanla  阅读(9)  评论(0)    收藏  举报