• 函数及函数操作


    # 函数的命名
    '''
    命名规则:
    字母数字下划线,首字符不能为数字
    严格区分大小写

    不能为关键字和中文
    '''
    # 定义函数
    def func():
        print()   

    func() #函数调用


    # 收集参数
    '''
    1、普通收集参数:可以收集单体的实参和形参变量
    参数:
    *args => arguments
    args:形成一个元组
    '''
    #例一:正向传参
    res = [1, 2, 3, 4]
    res1 = 10
    def func(*args):
        print(args)
    func(res, res1)
    #([1,2,3,4,5],10)

    #例二:反向传参
    res = [1, 2, 3]
    res1 = 4
    def func(a, b, c, d):
        print(a, b, c, d)
    func(res1, *res) #收集参数只能放在后面
    # 4,1,2,3

    '''
    2、关键字收集参数:专门用来收集多余的没人要的关键字实参
        **kwargs => keywords=arguments
        **kwargs: 形成一个字典
    '''
    def func(**kwargs):
        print(kwargs)

    func(a=1,b=2,c=3)
    #{'a':1, 'b':2, 'c'=3}

    '''
    return 返回值
        自定义函数的返回值,把值返回到函数的调用处

    (1) return + 六种标准数据类型,还有类和对象,函数的命名
    无return时,默认返回的是None

    (2) 在执行完return之后,立刻终止函数。
    '''
    def func():
        return True
        
    res = func() #变量对象接收函数的return值

    '''
    global 关键字 
        1、在函数内部定义一个全局变量
        2、在函数内部将已有的变脸修改为全局变量
    用法:
    '''
    # 1、创建全局变量
    def func():
        gloal a
        a = 100
    print(a)
    # 100

    # 2、修改变量为全局变量
    a = 100
    def func():
        global a
    print(a)

    '''
    函数名的使用
        函数名作为函数本身的对象
    '''
    # 1、函数名可以作为一个特殊的变量对象
    # 2、作为函数的参数:可以传参
    def func():
        print("函数")
    a = func
    a()
    # 函数

    def func4(f):
        f()
    func4(func)
    # 函数

    #  2、函数名作为容器类型数据的元素
    def func1():
        print(1)
    def func():
        print(2)
    def func():
        print(3)
    lst = [func1, func2, func3]
        print(i)
        i()
    # 1 2 3

    # 3、作为函数的返回值
    def func(f):
        return f
    res = func(func1)
    print(res)
    # 1

    '''
    匿名函数:用一行代码表示一个只有返回值的函数

    定义语法:
    lambda 参数:返回值
    调用语法:
    func = lambda 参数:返回值
    func()
    '''
    # 无参的lambda表达式
    def func():
        return "123"

    func = lambda : "123"
    func()

    # 有参的lambda 表达式
    def func():
        return type(n)

    func = lambda n :type(n)
    func([1,2,3])

    # 带有判断条件的lambda表达式
    def func(n):
        if n%2 == 0:
            return "偶数"
        else:
            return "奇数"
    func = lambda n:"偶数" if n% 2 == 0 else "奇数"
    func(17)


    # 三元运算符
    '''
    语法:
        真值 if 条件表达式 else 假值,条件表达式为真,返回前面的值,否则~
    '''
    res = "偶数" if n%2 == 0 else "奇数"

  • 相关阅读:
    fcntl函数 非阻塞轮询
    c#基础入门
    【CentOS 7】网络配置及其相关命令
    【网络技术】【Kali Linux】Wireshark嗅探(十一)以太网Ethernet协议报文捕获及分析
    [ROS](11)ROS通信 —— 服务(Service)通信编程之srv(C++)(Python)
    C++多态案例2----制作饮品
    MyBatis之关联关系
    快来体验快速通道,netty中epoll传输协议详解
    基于Spark的网上商城用户行为分析
    企业信息查询:洞悉市场,抢占先机
  • 原文地址:https://blog.csdn.net/zz5957/article/details/126002126