首页 > 代码库 > Day04-Python基础函数

Day04-Python基础函数

一.函数的对象:函数是第一类对象,即函数可以当作数据传递

1.可以被引用

def foo():
    print(from foo)

func=foo      ##foo值赋给了func

print(foo)    ##<function foo at 0x006E4108>
print(func)   ##<function foo at 0x006E4108>
func()        ##foo值赋给了func ,所以可以直接()引用

2.可以当做参数传递

def foo():
    print(from foo111111)
def bar(func):
    print(func)
    func()
bar(foo)

3.返回值可以是函数

def foo():
    print(from foo)
def long(func):
    return func
f=long(foo)
print(f)
f()

4.可以当做容器类型的元素

def foo():
    print(from foo)
dic = {fuck:foo}
print(dic[fuck])
dic[fuck]()

 

def select(sql):
    print(------>select)
def update(sql):
    print(------>update)
def delete(sql):
    print(------>delete)
def insert(sql):
    print(------>insert)

fun_dit={
    select:select,
    update:update,
    delete:delete,
    insert:insert
}
def main():
    while True:
        sql = input(>>>:).strip()
        if not sql: continue
        l = sql.split()
        cmd= l[0]
        if cmd  in fun_dit:
            fun_dit[cmd](l)
main()

二.函数的嵌套

 1.函数的嵌套调用

def max2(x,y):
    return x if x > y else y

def max4(a,b,c,d):
    res1=max2(a,b)
    res2=max2(res1,c)
    res3=max2(res2,d)
    return res3
print(max4(10,80,31,20))

 2.函数嵌套定义

def f1():

    def f2():
        print(from foo f2)
        def f3():
            print(from foo f3)

        f3()
    f2()
f1()

 

Day04-Python基础函数