zoukankan      html  css  js  c++  java
  • python函数01

    函数是什么

    定义:函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要其函数名调用即可

    特性:

      1.减少重复代码

      2.使程序变得可扩展

      3.使程序变得易维护

    语法定义

    def weekday():
        print("hello")
    
    weekday()

    可以带参数

    def calt(x,y):
        ret = x * y
        return ret ##返回函数执行结果(任何值都可以,因为这里只需要返回一个结果,后面好拿来做别的事情)
    caltt = calt(10,20)
    print(caltt)

    返回值

    要想获取函数的执行结果,就可以用return语句把结果返回

    注意:

      1.函数在执行过程中只要遇到return语句,就会停止执行并返回结果,so也可以理解为return语句代表着函数的结束

      2.如果未在函数中指定return,那这个函数的返回值为None

    ##嵌套函数
    name = "caicai"
    
    def name_list():
        name = "Caicai"
            def name_list2():
                name = "CaiCai"
                print("这是第san层打印:",name)
            name_list2()
            print("这是第二层打印:",name)
     name_list()
    print("最外面:"name)    
    ###递归
    def calt(n):
           print(n)
           if  int(n/2)>0:
               return calt(int(n/2))
    calt(100)
    
    '''
    递归的特性:
        1.必须有一个明确的结束条件
        2.每次进入更深层递归时,问题规模相比上次递归都应有所减少
        3.递归的效率不高,递归层次过多会导致栈的溢出(在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层帧,每当函数返回,栈就会减一层帧。由于栈的大小不是无线的,所以,递归调用的次数过多,会导致栈溢出)
    
    '''
    以上内容作为课堂笔记,如有雷同,请联系于我
  • 相关阅读:
    Jzoj4765 Crisis
    Jzoj4764 Brothers
    Jzoj4764 Brothers
    Jzoj4756 幻象
    Jzoj4756 幻象
    Jzoj4755 快速荷叶叶变换
    Jzoj4755 快速荷叶叶变换
    力扣算法题—059螺旋矩阵
    力扣算法题—058最后一个单词长度
    力扣算法题—057插入区间
  • 原文地址:https://www.cnblogs.com/ArtisticMonk/p/8921049.html
Copyright © 2011-2022 走看看