zoukankan      html  css  js  c++  java
  • Python函数

    函数的定义与调用

    # 定义
    def wash():
        print("加水")
        print("搓洗")
        print("脱水")
    
    # 调用
    wash()
    

    函数传参数

    def wash(a, b, c):
        print("加水{}升".format(a))
        print("搓洗{}分钟".format(b))
        print("脱水{}分钟".format(c))
    
    wash(3, 40 ,10)
    

      形参,实参

    上例中a b c为行参 传递的 3 40 10为实参

    实参与形参必须一一对应不能多或者少

      关键字参数

      可以使用以下方式传递参数

    wash(a=3, b=40 ,c=10)
    

      使用关键字参数参数传递顺序可以不一致

      默认参数

    def wash(a, b=20, c=10):
        print("加水{}升".format(a))
        print("搓洗{}分钟".format(b))
        print("脱水{}分钟".format(c))
    
    wash(3, 40, 20)
    

      注意:默认参数如果不传递参数值会使用默认值

        默认参数后面不能有非默认参数即默认参数需要放在最后

      可变长参数

      示例

    # 可变长参数
    def funct1(*args):
        for i in args:
            print(i, end=" ")
        print()
    
    funct1(1, 2, 3, 4, 5)
    
    # 定义一个函数传递多个参数求和
    def add_num(*args):
        sum = 0
        for i in args:
            sum += i
        print(sum)
    add_num(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
    

     函数综合传参-多个关键字 

    # 函数综合传参
    def people(name, *args, age=18, **kwargs):
        print(name)
        print(args)
        print(age)
        print(kwargs)
    
    people("zhangsan", "man", age=25, salary=20000, department="IT")
    

      使用参数**kwargs传递参数转换成字典 输出如下

    zhangsan
    ('man',)
    25
    {'salary': 20000, 'department': 'IT'}
    

      

    函数返回值

    函数返回值是函数得到的一个结果

    函数的功能要专一,一个函数只能完成一个功能

    返回值示例

    def test(a, b):
        c = a + b
        return c
        print(c)    # 函数执行到return就结束了,这句不会继续执行
    
    test(1, 2)  # 调用执行函数 无输出
    print(test(1, 2))   # 打印返回值输出3
    d = test(1, 2)  # 返回值可以赋值给变量
    print(d)

     函数结果要被其他地方调用就不用在函数内部使用print打印,色图return返回值

    嵌套函数

    在一个函数体内调用其他函数

    def aaa():
        print("aaa")
    def bbb():
        print("bbb")
        aaa()
    bbb()
    

      执行顺序

      1,定义函数aaa

      2,定义函数bbb

      3,执行函数bbb

      4,执行函数bbb内代码打印字符串bbb

      5,执行函数bbb内代表aaa()即执行函数aaa 打印字符串aaa

      输出为

    bbb
    aaa
    

      小结:

      函数需要先定义在调用

      调用函数就是执行函数体内的代码

      函数类似一个变量,定义函数就是把函数体内代码在内存开放一个空间存放进去,通过函数名来调用

      示例

      传递三个数字返回最大值

    def max_num2(a, b):
        if a > b:
            return a
        else:
            return b
    
    def max_num3(n1, n2, n3):
        aaa = max_num2(n1, n2)
        bbb = max_num2(aaa, n3)
        return bbb
    

      解析

    函数 max_num2传递2个参数返回较大的
    函数 max_num3传递3个参数,在内部调用函数max_num2第一次调用返回参数1 2的较大值赋值给aaa 然后再次调用函数max_num2把aaa即参数1 2的较大值很参数3进行对比把较大赋值给bbb然后返回,最终获取了3给参数中的最大值
    

      函数变量作用域

      示例

    name = "zhangsan"   # 全局变量
    
    def change_name():
        name = "lisi"   # 这个变量只在函数内部生效
        gender = "male"
        print(name)
    
    change_name()
    print(name) # 结果为zhangsan
    print(gender)   # 报错,变量gender只在函数内部使用
    

      注意:如果函数内部没有重新定义变量则在函数内部可以使用全局变量,如果定义了局部变量则优先使用局部变量

      递归函数

  • 相关阅读:
    二十一、正则表达式
    二十、冒泡算法,递归,装饰器
    十九、python内置函数汇总
    Jenkins-[--4--]-浏览器不能打开jenkins报告,报错Opening Robot Framework report failed
    Jenkins-[--3--]-robotframework脚本,配置自动发送邮件
    Jenkins-[--2--]-执行本地的robotframework项目
    Jenkins-[--1--]-环境配置
    Redis常用数据类型介绍、使用场景及其操作命令
    angular过滤器
    jscode属性排序
  • 原文地址:https://www.cnblogs.com/minseo/p/13905145.html
Copyright © 2011-2022 走看看