zoukankan      html  css  js  c++  java
  • python基础学习函数

    函数的定义:
    def 函数名:
    def test():
    函数的调用:
    test()
    接收函数返回值:
    result = test()
    函数的参数
    在函数中使用return 来返回一个值
    返回值可以使数字、字符串、列表、元组、 字典等。
    如果没有返回值则返回none
    可以有多个返回值。
    返回值个数 = 0时 :返回none
    返回值个数 = 1 时 :返回object
    返回值个数 > 1时 :返回元组类型

    参数的分类
    位置参数:形参和实参必须顺序和数量对应
    关键字参数:以形参=实参的方式传入参数,可以不按顺序,形参和实参的数量必须一致
    默认参数: 在形参处指定默认值,如果没有传入此参数,则参数为默认值
    参数组:
    *args :当拥有多个参数并且参数数量不固定时,使用*args,以列表的形式传入多个位置参数
    **kwargs : 当拥有多个关键字参数并却参数数量不固定时,使用**kwargs,以字典的形式传入多个关键字参数

    全局变量在文件头部定义,全局变量可以在程序任意地方都可以使用
    局部变量只能在定义局部变量的函数内使用
    如果在函数内定义的局部变量和全局变量名称一致,则在函数内默认使用局部变量,如果要在函数内使用全局变量时,需要先声明该变量(global 全局变量名)

    递归函数
    递归函数就是在函数内自己调用自己
    递归特性
    1.必须有一个明确的结束条件
    2.每次进入更深一层递归时,问题规模相比上次递归都应有所减少
    3.递归效率不高,递归层次过多会导致栈溢出(最大递归次数为999次)
    def test(n):
    print(n)
    if n > 0 : #这是一个结束条件
    test(int(n/2)) #递归调用
    test(10)

    高阶函数
    将函数作为参数传入另一个函数叫做高阶函数
    函数的结果可以赋值给变量,而变量又可以作为函数的参数,所以我们可以直接用函数来作为函数的参数
    def add(a,b,f):
    return f(a)+f(b) #这里对变量a 和变量b 使用了函数f
    add(1,-1,abs) #这里求绝对值的函数abs作为实参传入形参f

  • 相关阅读:
    终端提示“ timed out waiting for input: auto-logout”
    shell-日志统计
    spring-file-upload-exceeds its maximum permitted size of 1048576 bytes
    全面质量管理 TQM、六西格玛、CMMI、ISO9000 关系
    GitLab: You are not allowed to force push code to a protected branch on this project.
    go 多版本管理
    glide install error
    js tab栏切换
    ES6 class命令浅识
    ES6 const命令
  • 原文地址:https://www.cnblogs.com/uyahs/p/7720851.html
Copyright © 2011-2022 走看看