zoukankan      html  css  js  c++  java
  • python_函数操作_函数三大理论

    匿名函数:匿名函数就是指不需要显示的指定函数用lambda表示,默认return结果

    在Python中如果一个元素被创建了,但是并没有一个变量来接受这个元素,则解释器会自动释放这个函数的内存空间

    比起def而言,虽然lambda不能进行复杂的逻辑计算,但是他比def更加的简便,但是需要配合别的函数使用,一般不单独使用

    name = lambda x:x+1
    a = name(1)
    print(a)
    #2

    编程的方法论:面向过程,函数式编程,面向对象

    函数式编程:函数式=编程语言自定义函数+数学意义的函数

    用编程语言去实现数学函数,这种函数内对象是不变的,要么参数是函数,要么返回值是函数没有for和while,所以的循环用递归去实现,无变量的赋值(不用变量去保存状态,无赋值既不改变)

    特点:

     1.不可变:不用变量保存状态,不修改变量

    #即面向对象
    a= 1
    def foo():
        global a
        a +=1
        return a
    foo()
    print(a)
    #函数式
    n = 1
    def nua(n):
        return n+1
    res = nua(1)
    print(res)
    #2
    #2

    2.函数即变量

    函数名可以当做一个变量传给一个函数

    返回值也可以是函数名

    def foo(n):
        print(n)
    def bar(name):
        print("My name is %s"%name)
    foo(bar('hai'))
    #My name is hai
    None

    面向对象:面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。

    一切都是对象

    面向对象是一种对现实世界理解和抽象的方法,对做程序来说,就是让程序人员,用一种思维更好的看待万物,在编程中的本质。

    举例:

    将一栋房子 比作一个对象 【房子:对象】。

    引用https://www.cnblogs.com/littlemo/p/4350848.html

    面向过程:

    面向过程就是面向解决问题的过程进行编程。仔细思考一下,我们在学习和工作中,当我们去实现某项功能或完成某项任务时,是不是会不自觉的按部就班的罗列出我们要做的事情?(如果没有,建议以后试着步骤化解决问题)。而当我们按着我们罗列的步骤去解决问题时,实质上就是按照面向过程的思想去解决问题。我们罗列的步骤就是过程,按照步骤解决问题就是面向过程。

    传统的面向过程的编程思想总结起来就八个字——自顶向下,逐步细化!实现步骤如下:

    1. 将要实现的功能描述为一个从开始到结束按部就班的连续的步骤(过程);
    2. 依次逐步完成这些步骤,如果某一步的难度较大,又可以将该步骤再次细化为若干个子步骤,以此类推,一直到结束得到想要的结果;
    3. 程序的主体是函数,一个函数就是一个封装起来的模块,可以实现一定的功能,各个子步骤往往就是通过各个函数来完成的,从而实现代码的重用和模块化编程!

    高阶函数:把函数当做参数传给另外一个函数

    .       返回值中包含函数

  • 相关阅读:
    MySQL基础学习笔记
    网络编程入门笔记
    JUC并发编程学习笔记
    育儿技巧
    无法下载安装文件,请检查internet连接
    用户 'NT ServiceSSISScaleOutMaster140' 登录失败
    Javascript中apply、call、bind
    JQuery 源码解析一
    docker容器中部署 kafka 和 elk
    查找库中所有表所有字段中某个指定的字符
  • 原文地址:https://www.cnblogs.com/Alom/p/10926783.html
Copyright © 2011-2022 走看看