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

  • 相关阅读:
    流量控制--2.传统的流量控制元素
    流量控制--1.概览
    Opentelemetry Collector的配置和使用
    高德全链路压测——精准控压的建设实践
    高德全链路压测——语料智能化演进之路
    业内首发车道级导航背后——详解高精定位技术演进与场景应用
    浅析云控平台画面传输的视频流方案
    关于卫星定位,你想知道的一切
    Pod容器中安装软件包
    面试应该怎么问问题?
  • 原文地址:https://www.cnblogs.com/uyahs/p/7720851.html
Copyright © 2011-2022 走看看