python的一些函数特性

本文为自己学习时记得笔记,内容不多,以代码为主,但是逐个运行分析,相信收获还是有的!

# -*- coding:utf-8 -*-

"""简单函数说明
"""


def fun1(username, password="myPassword"):
    """最简单的函数,可以指定参数默认值,不传入参数则用默认值
    """
    print("【基本函数】", "我的名字是: {},密码默认是: {}".format(username, password))


def fun2():
    """可以将函数赋值给变量
    """
    # 将函数赋值给变量'f',没有使用(),因为并不是在调用fun1函数
    # 只是将fun1()放在变量f里
    f = fun1
    print("【函数赋值给变量】", "变量f的类型是", type(f))
    # 如果要执行f
    f("jim")


def fun3():
    """函数中,也可以定义函数,不过在fun3()以外,是无法调用起内部函数的
    """
    print("【内部函数】", "这里是fun3()")

    def fun3_1():
        print("【内部函数】", "这里是fun3_1()")

    def fun3_2():
        print("【内部函数】", "这里是fun3_2()")

    # 不用下面两行代码,两个内部函数不会执行
    fun3_1()
    fun3_2()


def fun4(which):
    """函数,返回函数,就是说,某函数的返回值不是具体值,而是函数
    """

    def fun4_1():
        print("【返回函数】", "这里是fun4_1()")

    def fun4_2():
        print("【返回函数】", "这里是fun4_2()")

    if which == "fun4_1":
        # 注意,这里是fun4_1,不是fun4_1()
        # 如果加了(),就不会成功返回函数,因为,函数已经执行完
        # 这里返回函数,是返回函数定义而已
        return fun4_1
    else:
        return fun4_2


def fun5_1():
    """将函数传给函数_1,一个场景,比如在之前fun1之前,先做点别的事儿
    """
    print("【函数接受函数参数】", "我去做火车!")


def fun5_2(fun):
    """将函数传给函数_2
    """
    print("【函数接受函数参数】", "我去买火车票!")
    fun()


# fun1("jack")
# fun2()
# fun3()
# 执行fun4()

# fun_ = fun4("fun4_1")
# print(fun_)
# fun_()

# fun5_2(fun5_1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值