zoukankan      html  css  js  c++  java
  • 函数

    函数基本语法

    函数的作用:当你在写一个程序的时候,如果需要反复执行同一个动作,你可以copy几次自己的代码,但是当需要反复执行成百上千次代码的时候,这样是不是显得自己low,函数是可以实现反复调用,就像你只需要下达一个指令,他就知道自己要做什么,不需要再反复得去自己搞了!

    函数的语法:
    def func():
                   print('i am you father.')
                return 'no’
    
    func()
            print(func())
    
    
    执行结果: i am you father.
    i am you father.
    no

    观察执行的结果,函数的结果是返回一个return的值之后就执行结束了,return的值需要打印出来,如果没return的值,那么print出来的值会显示‘None’。

    函数参数和局部变量

    形参只有在被调用的时候才能分配内存单元,调用结束后,内存单元就会被立刻释放。因此,形参只在函数内部才会生效,函数调用结束后则不能在调用形参变量。

    实参可以是常量、变量、表达式以及函数等。在函数调用的时候,一定要有确切的值,然后把这些值传给形参。

    默认参数:当我们创建一个函数的时候,如果传入的参数有其中一个是默认值,那么我们就不需要继续填写了。

    内置函数和递归函数

    • 内置函数是python自带的函数,可以选择查找内置函数表
    • 递归函数是在函数内部调用函数自身,从而实现递归。最典型的案列就是利用递归实现二分查找。
    # Author:Zhang Zhao
    def calc(n):
        '''
        this is a simple recursion function.
        :param n:
        :return:
        '''
        print(n)
        if int(n/2) == 0:
            return n
        calc(int(n/2))

     

    两种比较重要的方法:map,reduce

    • map,接收一个函数和函数的参数,实现对多个参数分别进行操作,一般会生成一个列表。
    • reduce,接收一个函数和函数的参数,实现对多个参数进行层级操作,例如阶乘操作。如果看不明白看下面的代码和结果,就可以理解了!
    def add(a,b):
        return a+b
    def multiply(a,b):
        return a*b
    def self_multiply(a):
        return a**2
    list1 = [1,2,3,4]
    list2 = [5,6,7,8]
    print(list(map(add,list1,list2)))
    print(list(map(self_multiply,list1)))
    
    from functools import reduce
    print(reduce(add,list1))
    print(reduce(multiply,list1))
    
    
    执行结果:
    [6, 8, 10, 12]
    [1, 4, 9, 16]
    10
    24
  • 相关阅读:
    17-vue-cli脚手架安装和webpack-simple模板项目生成
    15-其它
    14-表单输入绑定
    k8s组件通信或者创建pod生命周期
    升级CentOS 7.4内核版本--升级到最新
    Linux
    Statefulset的拓扑状态
    nginx浏览器开启密码验证
    为什么我们需要Pod?(容器设计模式sidecar)
    mysql内存优化
  • 原文地址:https://www.cnblogs.com/zz1314/p/10330398.html
Copyright © 2011-2022 走看看